package.json
Rama main · réplica de lectura del repositorio original.
{
"name": "@gantry/runtime",
"version": "1.2.52",
"description": "Provider-neutral agent runtime. Lightweight, secure, customizable.",
"author": "Gantry Contributors",
"license": "MIT",
"repository": {
"type": "git",
"url": "git+https://github.com/cawstudios/Agent.Gantry.git"
},
"homepage": "https://github.com/cawstudios/Agent.Gantry",
"bugs": {
"url": "https://github.com/cawstudios/Agent.Gantry/issues"
},
"keywords": [
"agent",
"runtime",
"orchestration",
"cli",
"automation"
],
"publishConfig": {
"access": "public"
},
"type": "module",
"main": "dist/index.js",
"bin": {
"gantry": "dist/cli/index.js"
},
"files": [
"dist/",
"packages/contracts/dist/",
"packages/contracts/package.json",
"docker-compose.yml",
"ops/postgres/init/",
"!**/*.map",
"factory/skills/*/SKILL.md"
],
"workspaces": [
"apps/web",
"packages/contracts",
"packages/sdk",
"examples/nextjs-workflows"
],
"scripts": {
"build:contracts": "npm run build --workspace @gantry/contracts",
"build:sdk": "npm run build --workspace @gantry/sdk",
"build:examples": "npm run typecheck --workspace @gantry/example-nextjs-workflows && npm run build --workspace @gantry/example-nextjs-workflows",
"build:web": "npm run build --workspace @gantry/web",
"dev:web": "npm run dev --workspace @gantry/web",
"clean": "rm -rf dist packages/contracts/dist packages/sdk/dist",
"build:core": "npm run build:contracts && npm run build:sdk && tsc && npm run copy:migrations && chmod +x dist/cli/index.js",
"build:runtime": "npm run clean && npm run build:core && npm run build:web && npm run copy:web",
"build": "npm run build:runtime && npm run build:examples",
"copy:migrations": "mkdir -p dist/adapters/storage/postgres/schema && cp -R apps/core/src/adapters/storage/postgres/schema/migrations dist/adapters/storage/postgres/schema/",
"copy:web": "mkdir -p dist/ui && cp -R apps/web/dist/. dist/ui/",
"db:migrate": "node dist/postgres-migrate.js",
"db:migrations:generate": "drizzle-kit generate --config drizzle.postgres.config.ts",
"db:migrations:custom": "drizzle-kit generate --config drizzle.postgres.config.ts --custom",
"db:migrations:check": "drizzle-kit check --config drizzle.postgres.config.ts",
"start": "npm run db:migrate && node dist/index.js",
"dev": "npm run build:contracts && npm run cli:dev -- local start",
"dev:core": "tsx apps/core/src/index.ts",
"dev:stop": "npm run build:contracts && npm run cli:dev -- local stop",
"dev:doctor": "npm run build:contracts && npm run cli:dev -- local doctor",
"reset": "npm run build:contracts && npm run cli:dev -- local reset",
"reset:only": "npm run build:contracts && npm run cli:dev -- local reset --no-start",
"reset:db": "npm run build:contracts && npm run cli:dev -- local reset-db",
"cli:dev": "tsx apps/core/src/cli/index.ts",
"typecheck": "npm run build:contracts && tsc --noEmit",
"typecheck:web": "npm run typecheck --workspace @gantry/web",
"format": "prettier --write \"apps/core/**/*.{ts,md}\" \"packages/contracts/src/**/*.ts\" \"packages/sdk/src/**/*.ts\"",
"format:fix": "prettier --write \"apps/core/**/*.{ts,md}\" \"packages/contracts/src/**/*.ts\" \"packages/sdk/src/**/*.ts\"",
"format:check": "prettier --check \"apps/core/**/*.{ts,md}\" \"packages/contracts/src/**/*.ts\" \"packages/sdk/src/**/*.ts\"",
"format:check:web": "npm run format:check --workspace @gantry/web",
"check:architecture": "python3 scripts/check_architecture.py",
"security:sbom": "npm sbom --omit=dev --sbom-format=cyclonedx",
"security:package": "python3 scripts/check_package_contents.py",
"security:images": "python3 scripts/check_runtime_images.py",
"prepare": "HUSKY=1 husky || true",
"prepublishOnly": "npm run build",
"lint": "eslint apps/core/src packages/contracts/src packages/sdk/src",
"lint:changed": "{ git diff -z --name-only --diff-filter=ACMR \"$(git merge-base HEAD origin/main)\" -- '*.ts' '*.tsx'; git ls-files -z --others --exclude-standard -- '*.ts' '*.tsx'; } | xargs -0 -r eslint --",
"lint:web": "npm run lint --workspace @gantry/web",
"lint:fix": "eslint apps/core/src packages/contracts/src packages/sdk/src --fix",
"test": "npm run build:contracts && npm run test:unit && npm run test:integration",
"test:unit": "npm run build:contracts && vitest run -c vitest.unit.config.ts",
"test:integration": "npm run build:contracts && vitest run -c vitest.integration.config.ts",
"test:integration:postgres": "node scripts/require-postgres-integration-env.mjs && npm run build:contracts && vitest run -c vitest.integration.postgres.config.ts",
"test:integration:postgres:chaos": "node scripts/require-postgres-integration-env.mjs && npm run build:contracts && GANTRY_POSTGRES_LANE=chaos vitest run -c vitest.integration.postgres.config.ts",
"test:integration:postgres:hot-path": "node scripts/require-postgres-integration-env.mjs && npm run build:contracts && GANTRY_POSTGRES_LANE=hot-path GANTRY_POSTGRES_HOT_PATH=1 vitest run -c vitest.integration.postgres.config.ts",
"test:e2e": "npm run build:contracts && vitest run -c vitest.e2e.config.ts",
"test:e2e:postgres": "node scripts/require-postgres-integration-env.mjs && npm run build:contracts && vitest run -c vitest.e2e.postgres.config.ts",
"test:e2e:agent:hermetic": "node scripts/require-postgres-integration-env.mjs && npm run build:contracts && vitest run -c vitest.agent-e2e.config.ts",
"test:e2e:agent:turn": "node scripts/require-postgres-integration-env.mjs && npm run build:contracts && vitest run -c vitest.agent-e2e.config.ts apps/core/test/agent-e2e/scenarios/haiku-turn.agent-e2e.test.ts",
"test:watch": "npm run build:contracts && vitest -c vitest.config.ts"
},
"dependencies": {
"@anthropic-ai/claude-agent-sdk": "0.3.156",
"@anthropic-ai/sandbox-runtime": "0.0.81",
"@anthropic-ai/sdk": "^0.100.1",
"@aws-sdk/client-s3": "3.1066.0",
"@aws-sdk/client-secrets-manager": "^3.1066.0",
"@aws-sdk/credential-provider-node": "^3.972.55",
"@clack/prompts": "^1.2.0",
"@gantry/contracts": "file:packages/contracts",
"@grammyjs/auto-retry": "^2.0.2",
"@langchain/core": "1.1.48",
"@langchain/langgraph-checkpoint-postgres": "1.0.3",
"@langchain/mcp-adapters": "1.1.3",
"@langchain/openai": "1.4.7",
"@langchain/openrouter": "0.3.0",
"@modelcontextprotocol/sdk": "^1.32.1",
"@opentelemetry/api": "^1.9.1",
"@opentelemetry/exporter-trace-otlp-http": "^0.220.0",
"@opentelemetry/resources": "^2.9.0",
"@opentelemetry/sdk-trace-node": "^2.9.0",
"@slack/bolt": "^4.7.0",
"ajv": "^8.20.0",
"cron-parser": "5.5.0",
"deepagents": "1.10.2",
"drizzle-orm": "^0.45.2",
"google-auth-library": "^10.7.0",
"grammy": "^1.42.0",
"jose": "^6.2.9",
"langchain": "1.4.4",
"officeparser": "^6.1.1",
"pdfjs-dist": "^6.2.108",
"pg": "^8.16.3",
"pg-boss": "^12.16.0",
"playwright-core": "1.60.0-alpha-2026-04-27",
"tldts": "^7.0.30",
"zod": "^4.6.7"
},
"devDependencies": {
"@eslint/js": "^9.35.0",
"@gantry/sdk": "file:packages/sdk",
"@types/node": "^24.12.2",
"@types/pg": "^8.15.5",
"@vitest/coverage-v8": "^4.1.4",
"drizzle-kit": "^0.31.5",
"eslint": "^9.35.0",
"eslint-plugin-no-catch-all": "^1.1.0",
"globals": "^15.12.0",
"husky": "^9.1.7",
"openapi-typescript": "^7.13.0",
"prettier": "^3.8.1",
"tsx": "^4.19.0",
"typescript": "^5.7.0",
"typescript-eslint": "^8.35.0",
"vitest": "^4.0.18"
},
"engines": {
"node": ">=24 <25"
},
"overrides": {
"@anthropic-ai/sandbox-runtime@0.0.81": {
"zod": "$zod"
},
"@gantry/web": {
"zod": "$zod"
},
"express": {
"body-parser": "2.4.0"
},
"esbuild": "0.28.0",
"form-data": "4.0.6",
"hono": "4.13.11",
"ws": "8.21.0",
"qs": "6.16.1",
"fast-uri": "^3.1.9",
"@emnapi/core": "^1.11.3",
"@emnapi/runtime": "^1.11.3",
"@emnapi/wasi-threads": "^1.2.3",
"pdfjs-dist": "^6.2.108"
}
}