@enactprotocol/cli 2.1.24 → 2.1.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +2 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init/templates/claude.d.ts +1 -1
- package/dist/commands/init/templates/claude.d.ts.map +1 -1
- package/dist/commands/init/templates/claude.js +1 -1
- package/dist/commands/init/templates/tool-agents.d.ts +1 -1
- package/dist/commands/init/templates/tool-agents.d.ts.map +1 -1
- package/dist/commands/init/templates/tool-agents.js +8 -8
- package/dist/commands/install/index.d.ts.map +1 -1
- package/dist/commands/install/index.js +9 -1
- package/dist/commands/install/index.js.map +1 -1
- package/dist/commands/mcp/index.d.ts.map +1 -1
- package/dist/commands/mcp/index.js +204 -53
- package/dist/commands/mcp/index.js.map +1 -1
- package/dist/commands/run/index.d.ts.map +1 -1
- package/dist/commands/run/index.js +294 -34
- package/dist/commands/run/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/utils/errors.d.ts +8 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +13 -2
- package/dist/utils/errors.js.map +1 -1
- package/package.json +5 -5
- package/src/commands/index.ts +2 -0
- package/src/commands/init/templates/claude.ts +1 -1
- package/src/commands/init/templates/tool-agents.ts +8 -8
- package/src/commands/install/index.ts +11 -0
- package/src/commands/learn/index.ts +6 -11
- package/src/commands/mcp/index.ts +768 -0
- package/src/commands/run/README.md +51 -1
- package/src/commands/run/index.ts +370 -30
- package/src/index.ts +4 -1
- package/src/utils/errors.ts +26 -6
- package/tests/commands/init.test.ts +1 -1
- package/tests/commands/run.test.ts +260 -0
- package/tests/utils/errors.test.ts +36 -0
- package/tsconfig.tsbuildinfo +1 -1
package/dist/commands/index.d.ts
CHANGED
|
@@ -24,4 +24,5 @@ export { configureInspectCommand } from "./inspect";
|
|
|
24
24
|
export { configureYankCommand } from "./yank";
|
|
25
25
|
export { configureUnyankCommand } from "./unyank";
|
|
26
26
|
export { configureVisibilityCommand } from "./visibility";
|
|
27
|
+
export { configureMcpCommand } from "./mcp";
|
|
27
28
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlD,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlD,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC"}
|
package/dist/commands/index.js
CHANGED
|
@@ -28,4 +28,6 @@ export { configureYankCommand } from "./yank";
|
|
|
28
28
|
export { configureUnyankCommand } from "./unyank";
|
|
29
29
|
// Private tools (Phase - visibility management)
|
|
30
30
|
export { configureVisibilityCommand } from "./visibility";
|
|
31
|
+
// MCP integration commands
|
|
32
|
+
export { configureMcpCommand } from "./mcp";
|
|
31
33
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,8BAA8B;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEhD,wCAAwC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,4BAA4B;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,gDAAgD;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,8BAA8B;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEhD,wCAAwC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,4BAA4B;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,gDAAgD;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,2BAA2B;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CLAUDE.md template for Claude integration
|
|
3
3
|
*/
|
|
4
|
-
export declare const claudeTemplate = "# CLAUDE.md\n\nThis project uses Enact tools \u2014 containerized, signed executables you can run via CLI.\n\n## Quick Reference\n```bash\nenact run <tool> --args '{\"key\": \"value\"}' # Run a tool\nenact search \"keyword\" # Find tools\nenact learn author/tool # View tool documentation\nenact install author/tool # Install tool\nenact list # List installed tools\n```\n\n## Running Tools\nTools take JSON input and return JSON output:\n```bash\n# Run and capture output\nresult=$(enact run author/utils/formatter --args '{\"code\": \"const x=1\"}')\n\n# Parse with jq\nenact run tool --args '{}' | jq '.data'\n```\n\n## Creating Tools\nCreate `SKILL.md` in a directory:\n```yaml\n---\nname: namespace/category/tool\ndescription: Clear description for search\nversion: 1.0.0\nfrom: python:3.12-slim # Docker image\nbuild: pip install requests # Install dependencies (cached)\ncommand: python /
|
|
4
|
+
export declare const claudeTemplate = "# CLAUDE.md\n\nThis project uses Enact tools \u2014 containerized, signed executables you can run via CLI.\n\n## Quick Reference\n```bash\nenact run <tool> --args '{\"key\": \"value\"}' # Run a tool\nenact search \"keyword\" # Find tools\nenact learn author/tool # View tool documentation\nenact install author/tool # Install tool\nenact list # List installed tools\n```\n\n## Running Tools\nTools take JSON input and return JSON output:\n```bash\n# Run and capture output\nresult=$(enact run author/utils/formatter --args '{\"code\": \"const x=1\"}')\n\n# Parse with jq\nenact run tool --args '{}' | jq '.data'\n```\n\n## Creating Tools\nCreate `SKILL.md` in a directory:\n```yaml\n---\nname: namespace/category/tool\ndescription: Clear description for search\nversion: 1.0.0\nfrom: python:3.12-slim # Docker image\nbuild: pip install requests # Install dependencies (cached)\ncommand: python /workspace/main.py ${input}\ninputSchema:\n type: object\n properties:\n input: { type: string, description: \"The input to process\" }\n required: [input]\n---\n# Tool Name\nUsage documentation here.\n```\n\nKey points:\n- `${param}` is auto-quoted \u2014 never add manual quotes\n- `from:` pin image versions (not `:latest`)\n- `build:` steps are cached by Dagger\n- Output JSON to stdout, errors to stderr\n- Non-zero exit = failure\n\n## Tool Development Workflow\n```bash\nenact run ./ --args '{\"input\": \"test\"}' # Test locally\nenact run ./ --args '{}' --dry-run # Preview command\nenact sign ./ && enact publish ./ # Publish\n```\n\n## Secrets\nDeclare in SKILL.md, set via CLI:\n```yaml\nenv:\n API_KEY: # Declared but not set\n```\n```bash\nenact env set API_KEY --secret --namespace author/tool\n```\n";
|
|
5
5
|
//# sourceMappingURL=claude.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/claude.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/claude.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,g1DAkE1B,CAAC"}
|
|
@@ -33,7 +33,7 @@ description: Clear description for search
|
|
|
33
33
|
version: 1.0.0
|
|
34
34
|
from: python:3.12-slim # Docker image
|
|
35
35
|
build: pip install requests # Install dependencies (cached)
|
|
36
|
-
command: python /
|
|
36
|
+
command: python /workspace/main.py \${input}
|
|
37
37
|
inputSchema:
|
|
38
38
|
type: object
|
|
39
39
|
properties:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AGENTS.md template for tool development
|
|
3
3
|
*/
|
|
4
|
-
export declare const toolAgentsTemplate = "# Enact Tool Development Guide\n\nEnact tools are containerized, cryptographically-signed executables. Each tool is defined by a `SKILL.md` file (YAML frontmatter + Markdown docs).\n\n## Quick Reference\n\n| Task | Command |\n|------|---------|\n| Run with JSON | `enact run ./ --args '{\"key\": \"value\"}'` |\n| Run from file | `enact run ./ --input-file inputs.json` |\n| Dry run | `enact run ./ --args '{}' --dry-run` |\n| Sign & publish | `enact sign ./ && enact publish ./` |\n\n## SKILL.md Structure\n\n```yaml\n---\nname: {{TOOL_NAME}}\ndescription: What the tool does\nversion: 1.0.0\nenact: \"2.0.0\"\n\nfrom: python:3.12-slim # Docker image (pin versions, not :latest)\nbuild: pip install requests # Build steps (cached by Dagger)\ncommand: python /
|
|
4
|
+
export declare const toolAgentsTemplate = "# Enact Tool Development Guide\n\nEnact tools are containerized, cryptographically-signed executables. Each tool is defined by a `SKILL.md` file (YAML frontmatter + Markdown docs).\n\n## Quick Reference\n\n| Task | Command |\n|------|---------|\n| Run with JSON | `enact run ./ --args '{\"key\": \"value\"}'` |\n| Run from file | `enact run ./ --input-file inputs.json` |\n| Dry run | `enact run ./ --args '{}' --dry-run` |\n| Sign & publish | `enact sign ./ && enact publish ./` |\n\n## SKILL.md Structure\n\n```yaml\n---\nname: {{TOOL_NAME}}\ndescription: What the tool does\nversion: 1.0.0\nenact: \"2.0.0\"\n\nfrom: python:3.12-slim # Docker image (pin versions, not :latest)\nbuild: pip install requests # Build steps (cached by Dagger)\ncommand: python /workspace/main.py ${input}\ntimeout: 30s\n\ninputSchema:\n type: object\n properties:\n input:\n type: string\n description: \"Input to process\"\n required: [input]\n\noutputSchema:\n type: object\n properties:\n result:\n type: string\n\nenv:\n API_KEY:\n description: \"External API key\"\n secret: true # Set via: enact env set API_KEY --secret\n---\n# Tool Name\nDocumentation here.\n```\n\n## Field Reference\n\n| Field | Description |\n|-------|-------------|\n| `name` | Hierarchical ID: `org/category/tool` |\n| `description` | What the tool does |\n| `version` | Semver version |\n| `from` | Docker image |\n| `build` | Build commands (string or array, cached) |\n| `command` | Shell command with `${param}` substitution |\n| `timeout` | Max execution time (e.g., \"30s\", \"5m\") |\n| `inputSchema` | JSON Schema for inputs |\n| `outputSchema` | JSON Schema for outputs |\n| `env` | Environment variables and secrets |\n\n## Parameter Substitution\n\nEnact auto-quotes parameters. **Never manually quote:**\n\n```yaml\n# WRONG - causes double-quoting\ncommand: python /workspace/main.py \"${input}\"\n\n# RIGHT - Enact handles quoting\ncommand: python /workspace/main.py ${input}\n```\n\n**Optional params:** Missing optional params become empty strings. Always provide defaults:\n```yaml\ninputSchema:\n properties:\n greeting: \n type: string\n default: \"Hello\" # Recommended for optional params\n```\n\nOr handle empty in shell:\n```yaml\ncommand: \"echo ${greeting:-Hello} ${name}\"\n```\n\nModifiers:\n- `${param}` \u2014 auto-quoted (handles spaces, JSON, special chars)\n- `${param:raw}` \u2014 raw, no quoting (use carefully)\n\n## Output\n\nOutput valid JSON to stdout when `outputSchema` is defined:\n\n```python\nimport json, sys\n\ntry:\n result = do_work()\n print(json.dumps({\"status\": \"success\", \"result\": result}))\nexcept Exception as e:\n print(json.dumps({\"status\": \"error\", \"message\": str(e)}))\n sys.exit(1) # non-zero = error\n```\n\n## Build Steps by Language\n\n**Python:**\n```yaml\nfrom: python:3.12-slim\nbuild: pip install requests pandas\n```\n\n**Node.js:**\n```yaml\nfrom: node:20-alpine\nbuild:\n - npm install\n - npm run build\n```\n\n**Rust:**\n```yaml\nfrom: rust:1.83-slim\nbuild: rustc /workspace/main.rs -o /workspace/tool\ncommand: /workspace/tool ${input}\n```\n\n**Go:**\n```yaml\nfrom: golang:1.22-alpine\nbuild: cd /workspace && go build -o tool main.go\ncommand: /workspace/tool ${input}\n```\n\n**System packages:**\n```yaml\nbuild: apt-get update && apt-get install -y libfoo-dev\n```\n\nBuild steps are cached \u2014 first run slow, subsequent runs instant.\n\n## File Access\n\nTools run in a container with `/workspace` as the working directory. All source files are copied there.\n\n## Secrets\n\nDeclare in `SKILL.md`:\n```yaml\nenv:\n API_KEY:\n description: \"API key for service\"\n secret: true\n```\n\nSet before running:\n```bash\nenact env set API_KEY --secret --namespace {{TOOL_NAME}}\n```\n\nAccess in code:\n```python\nimport os\napi_key = os.environ.get('API_KEY')\n```\n\n## LLM Instruction Tools\n\nTools without a `command` field are interpreted by LLMs:\n\n```yaml\n---\nname: myorg/ai/reviewer\ndescription: AI-powered code review\ninputSchema:\n type: object\n properties:\n code: { type: string }\n required: [code]\noutputSchema:\n type: object\n properties:\n issues: { type: array }\n score: { type: number }\n---\n# Code Reviewer\n\nYou are a senior engineer. Review the code for bugs, style, and security.\nReturn JSON: {\"issues\": [...], \"score\": 75}\n```\n\n## Publishing Checklist\n\n- [ ] `name` follows `namespace/category/tool` pattern\n- [ ] `version` set (semver)\n- [ ] `description` is clear and searchable\n- [ ] `inputSchema` / `outputSchema` defined\n- [ ] `from` uses pinned image version\n- [ ] `timeout` set appropriately\n- [ ] Tool tested locally with `enact run ./`\n\n## Troubleshooting\n\n```bash\nenact run ./ --args '{\"x\": \"y\"}' --verbose # Verbose output\nenact run ./ --args '{}' --dry-run # Preview command\nenact list # List installed tools\n```\n";
|
|
5
5
|
//# sourceMappingURL=tool-agents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-agents.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/tool-agents.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"tool-agents.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/tool-agents.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,kBAAkB,w5JAsN9B,CAAC"}
|
|
@@ -25,7 +25,7 @@ enact: "2.0.0"
|
|
|
25
25
|
|
|
26
26
|
from: python:3.12-slim # Docker image (pin versions, not :latest)
|
|
27
27
|
build: pip install requests # Build steps (cached by Dagger)
|
|
28
|
-
command: python /
|
|
28
|
+
command: python /workspace/main.py \${input}
|
|
29
29
|
timeout: 30s
|
|
30
30
|
|
|
31
31
|
inputSchema:
|
|
@@ -72,10 +72,10 @@ Enact auto-quotes parameters. **Never manually quote:**
|
|
|
72
72
|
|
|
73
73
|
\`\`\`yaml
|
|
74
74
|
# WRONG - causes double-quoting
|
|
75
|
-
command: python /
|
|
75
|
+
command: python /workspace/main.py "\${input}"
|
|
76
76
|
|
|
77
77
|
# RIGHT - Enact handles quoting
|
|
78
|
-
command: python /
|
|
78
|
+
command: python /workspace/main.py \${input}
|
|
79
79
|
\`\`\`
|
|
80
80
|
|
|
81
81
|
**Optional params:** Missing optional params become empty strings. Always provide defaults:
|
|
@@ -130,15 +130,15 @@ build:
|
|
|
130
130
|
**Rust:**
|
|
131
131
|
\`\`\`yaml
|
|
132
132
|
from: rust:1.83-slim
|
|
133
|
-
build: rustc /
|
|
134
|
-
command: /
|
|
133
|
+
build: rustc /workspace/main.rs -o /workspace/tool
|
|
134
|
+
command: /workspace/tool \${input}
|
|
135
135
|
\`\`\`
|
|
136
136
|
|
|
137
137
|
**Go:**
|
|
138
138
|
\`\`\`yaml
|
|
139
139
|
from: golang:1.22-alpine
|
|
140
|
-
build: cd /
|
|
141
|
-
command: /
|
|
140
|
+
build: cd /workspace && go build -o tool main.go
|
|
141
|
+
command: /workspace/tool \${input}
|
|
142
142
|
\`\`\`
|
|
143
143
|
|
|
144
144
|
**System packages:**
|
|
@@ -150,7 +150,7 @@ Build steps are cached — first run slow, subsequent runs instant.
|
|
|
150
150
|
|
|
151
151
|
## File Access
|
|
152
152
|
|
|
153
|
-
Tools run in a container with \`/
|
|
153
|
+
Tools run in a container with \`/workspace\` as the working directory. All source files are copied there.
|
|
154
154
|
|
|
155
155
|
## Secrets
|
|
156
156
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/install/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/install/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA6BH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8nBzC;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyB9D"}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
import { cpSync, existsSync, mkdirSync, rmSync, unlinkSync, writeFileSync } from "node:fs";
|
|
12
12
|
import { dirname, join, resolve } from "node:path";
|
|
13
13
|
import { createApiClient, downloadBundle, getAttestationList, getToolInfo, getToolVersion, verifyAllAttestations, } from "@enactprotocol/api";
|
|
14
|
-
import { addToolToRegistry, getCacheDir, getInstalledVersion, getMinimumAttestations, getProjectEnactDir, getToolCachePath, getTrustPolicy, getTrustedAuditors, loadConfig, loadManifestFromDir, pathExists, } from "@enactprotocol/shared";
|
|
14
|
+
import { addMcpTool, addToolToRegistry, getCacheDir, getInstalledVersion, getMinimumAttestations, getProjectEnactDir, getToolCachePath, getTrustPolicy, getTrustedAuditors, loadConfig, loadManifestFromDir, pathExists, } from "@enactprotocol/shared";
|
|
15
15
|
import { EXIT_FAILURE, EXIT_TRUST_ERROR, ManifestError, RegistryError, TrustError, colors, confirm, dim, error, formatError, handleError, info, json, keyValue, newline, success, suggest, symbols, withSpinner, } from "../../utils";
|
|
16
16
|
/**
|
|
17
17
|
* Parse tool@version syntax
|
|
@@ -319,6 +319,10 @@ async function installFromRegistry(toolName, version, options, ctx) {
|
|
|
319
319
|
}
|
|
320
320
|
// Update tools.json for the appropriate scope
|
|
321
321
|
addToolToRegistry(toolName, targetVersion, scope, isGlobal ? undefined : ctx.cwd);
|
|
322
|
+
// Also add to MCP registry for global installs
|
|
323
|
+
if (isGlobal) {
|
|
324
|
+
addMcpTool(toolName, targetVersion);
|
|
325
|
+
}
|
|
322
326
|
// Output result
|
|
323
327
|
if (options.json) {
|
|
324
328
|
json({
|
|
@@ -392,6 +396,10 @@ async function installFromPath(sourcePath, options, ctx) {
|
|
|
392
396
|
}, `${symbols.success} Installed ${manifest.name}`);
|
|
393
397
|
// Update tools.json for the appropriate scope
|
|
394
398
|
addToolToRegistry(manifest.name, version, scope, isGlobal ? undefined : ctx.cwd);
|
|
399
|
+
// Also add to MCP registry for global installs
|
|
400
|
+
if (isGlobal) {
|
|
401
|
+
addMcpTool(manifest.name, version);
|
|
402
|
+
}
|
|
395
403
|
if (options.json) {
|
|
396
404
|
json({
|
|
397
405
|
installed: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/install/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/install/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAoBH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8lBzC;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6H1D"}
|
|
@@ -12,8 +12,11 @@
|
|
|
12
12
|
* - use: Switch active toolset
|
|
13
13
|
* - toolset: Manage toolsets (create, delete, add, remove)
|
|
14
14
|
*/
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
15
|
+
import { existsSync } from "node:fs";
|
|
16
|
+
import { homedir } from "node:os";
|
|
17
|
+
import { join } from "node:path";
|
|
18
|
+
import { addMcpTool, addToolToToolset, createToolset, deleteToolset, getActiveToolset, listMcpTools, listToolsets, loadToolsRegistry, removeMcpTool, removeToolFromToolset, setActiveToolset, syncMcpWithGlobalTools, tryLoadManifestFromDir, } from "@enactprotocol/shared";
|
|
19
|
+
import { dim, error, formatError, header, info, json, keyValue, newline, select, success, table, } from "../../utils";
|
|
17
20
|
/**
|
|
18
21
|
* Get the path to enact-mcp binary
|
|
19
22
|
*/
|
|
@@ -22,15 +25,143 @@ function getEnactMcpPath() {
|
|
|
22
25
|
// Could be enhanced to detect actual binary location
|
|
23
26
|
return "enact-mcp";
|
|
24
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Detect installed MCP clients
|
|
30
|
+
*/
|
|
31
|
+
function detectClients() {
|
|
32
|
+
const home = homedir();
|
|
33
|
+
const platform = process.platform;
|
|
34
|
+
const clients = [
|
|
35
|
+
{
|
|
36
|
+
id: "claude-code",
|
|
37
|
+
name: "Claude Code",
|
|
38
|
+
configPath: () => {
|
|
39
|
+
// Claude Code settings location varies by platform
|
|
40
|
+
if (platform === "darwin") {
|
|
41
|
+
return join(home, "Library", "Application Support", "Claude", "claude_desktop_config.json");
|
|
42
|
+
}
|
|
43
|
+
if (platform === "win32") {
|
|
44
|
+
return join(home, "AppData", "Roaming", "Claude", "claude_desktop_config.json");
|
|
45
|
+
}
|
|
46
|
+
return join(home, ".config", "claude", "claude_desktop_config.json");
|
|
47
|
+
},
|
|
48
|
+
configFormat: "json",
|
|
49
|
+
detected: false,
|
|
50
|
+
instructions: "Add to mcpServers in your Claude Desktop config:",
|
|
51
|
+
configTemplate: (mcpPath) => `{
|
|
52
|
+
"mcpServers": {
|
|
53
|
+
"enact": {
|
|
54
|
+
"command": "${mcpPath}",
|
|
55
|
+
"args": []
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}`,
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
id: "cursor",
|
|
62
|
+
name: "Cursor",
|
|
63
|
+
configPath: () => {
|
|
64
|
+
if (platform === "darwin") {
|
|
65
|
+
return join(home, "Library", "Application Support", "Cursor", "User", "globalStorage", "cursor.mcp", "config.json");
|
|
66
|
+
}
|
|
67
|
+
if (platform === "win32") {
|
|
68
|
+
return join(home, "AppData", "Roaming", "Cursor", "User", "globalStorage", "cursor.mcp", "config.json");
|
|
69
|
+
}
|
|
70
|
+
return join(home, ".config", "Cursor", "User", "globalStorage", "cursor.mcp", "config.json");
|
|
71
|
+
},
|
|
72
|
+
configFormat: "json",
|
|
73
|
+
detected: false,
|
|
74
|
+
instructions: "Add to your Cursor MCP configuration:",
|
|
75
|
+
configTemplate: (mcpPath) => `{
|
|
76
|
+
"mcpServers": {
|
|
77
|
+
"enact": {
|
|
78
|
+
"command": "${mcpPath}",
|
|
79
|
+
"args": []
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}`,
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
id: "vscode",
|
|
86
|
+
name: "VS Code (with MCP extension)",
|
|
87
|
+
configPath: () => {
|
|
88
|
+
if (platform === "darwin") {
|
|
89
|
+
return join(home, "Library", "Application Support", "Code", "User", "settings.json");
|
|
90
|
+
}
|
|
91
|
+
if (platform === "win32") {
|
|
92
|
+
return join(home, "AppData", "Roaming", "Code", "User", "settings.json");
|
|
93
|
+
}
|
|
94
|
+
return join(home, ".config", "Code", "User", "settings.json");
|
|
95
|
+
},
|
|
96
|
+
configFormat: "jsonc",
|
|
97
|
+
detected: false,
|
|
98
|
+
instructions: "Add to your VS Code settings.json:",
|
|
99
|
+
configTemplate: (mcpPath) => `{
|
|
100
|
+
"mcp.servers": {
|
|
101
|
+
"enact": {
|
|
102
|
+
"command": "${mcpPath}",
|
|
103
|
+
"args": []
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}`,
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
id: "generic",
|
|
110
|
+
name: "Other MCP Client",
|
|
111
|
+
configPath: "",
|
|
112
|
+
configFormat: "json",
|
|
113
|
+
detected: true, // Always available
|
|
114
|
+
instructions: "Generic MCP server configuration:",
|
|
115
|
+
configTemplate: (mcpPath) => `{
|
|
116
|
+
"command": "${mcpPath}",
|
|
117
|
+
"args": []
|
|
118
|
+
}`,
|
|
119
|
+
},
|
|
120
|
+
];
|
|
121
|
+
// Detect which clients are installed
|
|
122
|
+
for (const client of clients) {
|
|
123
|
+
if (client.id === "generic")
|
|
124
|
+
continue;
|
|
125
|
+
const configPath = typeof client.configPath === "function" ? client.configPath() : client.configPath;
|
|
126
|
+
// Check if the app directory exists (not just config file)
|
|
127
|
+
const appDir = join(configPath, "..", "..");
|
|
128
|
+
client.detected = existsSync(appDir) || existsSync(configPath);
|
|
129
|
+
}
|
|
130
|
+
return clients;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Show MCP configuration for a specific client
|
|
134
|
+
*/
|
|
135
|
+
function showClientConfig(client, mcpPath) {
|
|
136
|
+
header(`Enact MCP Server - ${client.name}`);
|
|
137
|
+
newline();
|
|
138
|
+
info(client.instructions);
|
|
139
|
+
newline();
|
|
140
|
+
console.log(client.configTemplate(mcpPath));
|
|
141
|
+
if (client.id !== "generic") {
|
|
142
|
+
const configPath = typeof client.configPath === "function" ? client.configPath() : client.configPath;
|
|
143
|
+
newline();
|
|
144
|
+
dim(`Config file: ${configPath}`);
|
|
145
|
+
}
|
|
146
|
+
if (client.id === "claude-code") {
|
|
147
|
+
newline();
|
|
148
|
+
dim('For HTTP mode (remote access), use args: ["--http", "--port", "3000"]');
|
|
149
|
+
}
|
|
150
|
+
newline();
|
|
151
|
+
dim("The MCP server exposes all tools in ~/.enact/mcp.json");
|
|
152
|
+
dim("Use 'enact mcp sync' to add globally installed tools");
|
|
153
|
+
dim("Use 'enact mcp list' to see available tools");
|
|
154
|
+
}
|
|
25
155
|
/**
|
|
26
156
|
* Show MCP configuration for various clients
|
|
27
157
|
*/
|
|
28
|
-
async function installHandler(options) {
|
|
29
|
-
const client = options.client ?? "claude-code";
|
|
158
|
+
async function installHandler(options, isInteractive) {
|
|
30
159
|
const mcpPath = getEnactMcpPath();
|
|
160
|
+
const clients = detectClients();
|
|
161
|
+
// If --json, output config
|
|
31
162
|
if (options.json) {
|
|
32
163
|
const config = {
|
|
33
|
-
|
|
164
|
+
enact: {
|
|
34
165
|
command: mcpPath,
|
|
35
166
|
args: [],
|
|
36
167
|
},
|
|
@@ -38,56 +169,77 @@ async function installHandler(options) {
|
|
|
38
169
|
json(config);
|
|
39
170
|
return;
|
|
40
171
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
info("Add to your Claude Code settings (mcp_servers in settings.json):");
|
|
172
|
+
// If client specified via flag, show that client's config
|
|
173
|
+
if (options.client) {
|
|
174
|
+
const client = clients.find((c) => c.id === options.client || c.name.toLowerCase().includes(options.client.toLowerCase()));
|
|
175
|
+
if (!client) {
|
|
176
|
+
error(`Unknown client: ${options.client}`);
|
|
47
177
|
newline();
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
178
|
+
dim(`Available clients: ${clients.map((c) => c.id).join(", ")}`);
|
|
179
|
+
process.exit(1);
|
|
180
|
+
}
|
|
181
|
+
showClientConfig(client, mcpPath);
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
// Interactive mode: show detected clients and let user choose
|
|
185
|
+
if (isInteractive) {
|
|
186
|
+
const detectedClients = clients.filter((c) => c.detected);
|
|
187
|
+
const genericClient = detectedClients.find((c) => c.id === "generic");
|
|
188
|
+
if (detectedClients.length === 1 && genericClient) {
|
|
189
|
+
// No clients detected, show generic
|
|
190
|
+
showClientConfig(genericClient, mcpPath);
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
header("Enact MCP Server Setup");
|
|
194
|
+
newline();
|
|
195
|
+
// Show which clients were detected
|
|
196
|
+
const installedClients = detectedClients.filter((c) => c.id !== "generic");
|
|
197
|
+
if (installedClients.length > 0) {
|
|
198
|
+
info(`Detected MCP clients: ${installedClients.map((c) => c.name).join(", ")}`);
|
|
54
199
|
newline();
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
200
|
+
}
|
|
201
|
+
// Let user select
|
|
202
|
+
const selectedId = await select("Select your MCP client:", detectedClients.map((c) => {
|
|
203
|
+
const option = {
|
|
204
|
+
value: c.id,
|
|
205
|
+
label: c.name,
|
|
206
|
+
};
|
|
207
|
+
if (c.id !== "generic" && c.detected) {
|
|
208
|
+
option.hint = "detected";
|
|
209
|
+
}
|
|
210
|
+
return option;
|
|
211
|
+
}));
|
|
212
|
+
if (!selectedId) {
|
|
213
|
+
info("Cancelled");
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
216
|
+
const selectedClient = clients.find((c) => c.id === selectedId);
|
|
217
|
+
if (selectedClient) {
|
|
65
218
|
newline();
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
"enact": {
|
|
69
|
-
"command": "${mcpPath}",
|
|
70
|
-
"args": []
|
|
219
|
+
showClientConfig(selectedClient, mcpPath);
|
|
220
|
+
}
|
|
71
221
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
222
|
+
else {
|
|
223
|
+
// Non-interactive: show all detected clients
|
|
224
|
+
const detectedClients = clients.filter((c) => c.detected && c.id !== "generic");
|
|
225
|
+
const genericClient = clients.find((c) => c.id === "generic");
|
|
226
|
+
if (detectedClients.length === 0 && genericClient) {
|
|
227
|
+
showClientConfig(genericClient, mcpPath);
|
|
228
|
+
}
|
|
229
|
+
else if (detectedClients.length === 1 && detectedClients[0]) {
|
|
230
|
+
showClientConfig(detectedClients[0], mcpPath);
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
// Multiple clients detected, show them all
|
|
234
|
+
info("Multiple MCP clients detected. Use --client to specify one:");
|
|
77
235
|
newline();
|
|
78
|
-
|
|
79
|
-
|
|
236
|
+
for (const client of detectedClients) {
|
|
237
|
+
dim(` --client ${client.id} (${client.name})`);
|
|
238
|
+
}
|
|
80
239
|
newline();
|
|
81
|
-
dim("
|
|
82
|
-
|
|
83
|
-
"command": "${mcpPath}",
|
|
84
|
-
"args": []
|
|
85
|
-
}`);
|
|
240
|
+
dim("Or run interactively to select from a list.");
|
|
241
|
+
}
|
|
86
242
|
}
|
|
87
|
-
newline();
|
|
88
|
-
dim("The MCP server exposes all tools in ~/.enact/mcp.json");
|
|
89
|
-
dim("Use 'enact mcp sync' to add globally installed tools");
|
|
90
|
-
dim("Use 'enact mcp list' to see available tools");
|
|
91
243
|
}
|
|
92
244
|
/**
|
|
93
245
|
* List MCP-exposed tools
|
|
@@ -331,18 +483,17 @@ async function toolsetHandler(action, args, options) {
|
|
|
331
483
|
* Configure the mcp command
|
|
332
484
|
*/
|
|
333
485
|
export function configureMcpCommand(program) {
|
|
334
|
-
const mcp = program
|
|
335
|
-
.command("mcp")
|
|
336
|
-
.description("Manage MCP-exposed tools and toolsets");
|
|
486
|
+
const mcp = program.command("mcp").description("Manage MCP-exposed tools and toolsets");
|
|
337
487
|
// enact mcp install
|
|
338
488
|
mcp
|
|
339
489
|
.command("install")
|
|
340
490
|
.description("Show configuration to add Enact MCP server to your AI client")
|
|
341
|
-
.option("--client <client>", "Target client (claude-code, cursor, generic)"
|
|
491
|
+
.option("--client <client>", "Target client (claude-code, cursor, vscode, generic)")
|
|
342
492
|
.option("--json", "Output as JSON")
|
|
343
493
|
.action(async (options) => {
|
|
494
|
+
const isInteractive = process.stdout.isTTY ?? false;
|
|
344
495
|
try {
|
|
345
|
-
await installHandler(options);
|
|
496
|
+
await installHandler(options, isInteractive);
|
|
346
497
|
}
|
|
347
498
|
catch (err) {
|
|
348
499
|
error(formatError(err));
|