@enactprotocol/cli 2.3.5 → 2.3.8
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/index.d.ts.map +1 -1
- package/dist/commands/init/index.js +94 -46
- package/dist/commands/init/index.js.map +1 -1
- package/dist/commands/init/templates/agent-agents.d.ts +1 -1
- package/dist/commands/init/templates/agent-agents.d.ts.map +1 -1
- package/dist/commands/init/templates/agent-agents.js +1 -1
- package/dist/commands/init/templates/default-skill-package.d.ts +5 -0
- package/dist/commands/init/templates/default-skill-package.d.ts.map +1 -0
- package/dist/commands/init/templates/default-skill-package.js +13 -0
- package/dist/commands/init/templates/default-skill-package.js.map +1 -0
- package/dist/commands/init/templates/default-skill-script.d.ts +5 -0
- package/dist/commands/init/templates/default-skill-script.d.ts.map +1 -0
- package/dist/commands/init/templates/default-skill-script.js +11 -0
- package/dist/commands/init/templates/default-skill-script.js.map +1 -0
- package/dist/commands/init/templates/index.d.ts +2 -0
- package/dist/commands/init/templates/index.d.ts.map +1 -1
- package/dist/commands/init/templates/index.js +2 -0
- package/dist/commands/init/templates/index.js.map +1 -1
- package/dist/commands/install/index.d.ts +2 -2
- package/dist/commands/install/index.js +18 -18
- package/dist/commands/install/index.js.map +1 -1
- package/dist/commands/list/index.d.ts +2 -2
- package/dist/commands/list/index.js +3 -3
- package/dist/commands/list/index.js.map +1 -1
- package/dist/commands/org/index.d.ts +16 -0
- package/dist/commands/org/index.d.ts.map +1 -0
- package/dist/commands/org/index.js +203 -0
- package/dist/commands/org/index.js.map +1 -0
- package/dist/commands/publish/index.d.ts.map +1 -1
- package/dist/commands/publish/index.js +5 -1
- package/dist/commands/publish/index.js.map +1 -1
- package/dist/commands/search/index.js +2 -2
- package/dist/commands/search/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.js +2 -2
- package/dist/utils/errors.js.map +1 -1
- package/package.json +6 -6
- package/src/commands/env/README.md +1 -1
- package/src/commands/index.ts +3 -0
- package/src/commands/init/index.ts +103 -46
- package/src/commands/init/templates/agent-agents.ts +1 -1
- package/src/commands/init/templates/default-skill-package.ts +12 -0
- package/src/commands/init/templates/default-skill-script.ts +10 -0
- package/src/commands/init/templates/index.ts +2 -0
- package/src/commands/install/README.md +2 -2
- package/src/commands/install/index.ts +18 -18
- package/src/commands/list/index.ts +3 -3
- package/src/commands/org/index.ts +263 -0
- package/src/commands/publish/index.ts +4 -1
- package/src/commands/run/README.md +1 -1
- package/src/commands/search/index.ts +2 -2
- package/src/index.ts +5 -1
- package/src/utils/errors.ts +2 -2
- package/tests/commands/cache.test.ts +2 -2
- package/tests/commands/init.test.ts +66 -55
- package/tests/commands/install-integration.test.ts +11 -11
- package/tests/commands/publish.test.ts +5 -3
- package/tests/commands/sign.test.ts +1 -1
- package/tests/e2e.test.ts +13 -11
- package/tests/utils/ignore.test.ts +2 -1
- package/tsconfig.tsbuildinfo +1 -1
- /package/tests/fixtures/calculator/{skill.yaml → skill.package.yaml} +0 -0
- /package/tests/fixtures/env-tool/{skill.yaml → skill.package.yaml} +0 -0
- /package/tests/fixtures/greeter/{skill.yaml → skill.package.yaml} +0 -0
- /package/tests/fixtures/invalid-tool/{skill.yaml → skill.package.yaml} +0 -0
package/dist/commands/index.d.ts
CHANGED
|
@@ -27,4 +27,5 @@ export { configureVisibilityCommand } from "./visibility";
|
|
|
27
27
|
export { configureMcpCommand } from "./mcp";
|
|
28
28
|
export { configureValidateCommand } from "./validate";
|
|
29
29
|
export { configureServeCommand } from "./serve";
|
|
30
|
+
export { configureOrgCommand } from "./org";
|
|
30
31
|
//# 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;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAG5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,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;AAG5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC"}
|
package/dist/commands/index.js
CHANGED
|
@@ -34,4 +34,6 @@ export { configureMcpCommand } from "./mcp";
|
|
|
34
34
|
export { configureValidateCommand } from "./validate";
|
|
35
35
|
// Self-hosted registry
|
|
36
36
|
export { configureServeCommand } from "./serve";
|
|
37
|
+
// Organizations
|
|
38
|
+
export { configureOrgCommand } from "./org";
|
|
37
39
|
//# 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;AAC1D,2BAA2B;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAE5C,qBAAqB;AACrB,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,uBAAuB;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,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;AAE5C,qBAAqB;AACrB,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,uBAAuB;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEhD,gBAAgB;AAChB,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqWzC;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAiC3D"}
|
|
@@ -9,7 +9,7 @@ import { getSecret } from "@enactprotocol/secrets";
|
|
|
9
9
|
import { checkForUpdates } from "@enactprotocol/shared";
|
|
10
10
|
import { version } from "../../index";
|
|
11
11
|
import { error, formatError, info, success, warning } from "../../utils";
|
|
12
|
-
import { agentAgentsTemplate, claudeTemplate, toolAgentsTemplate, toolSkillTemplate, } from "./templates";
|
|
12
|
+
import { agentAgentsTemplate, claudeTemplate, defaultSkillPackageTemplate, defaultSkillScriptTemplate, toolAgentsTemplate, toolSkillTemplate, } from "./templates";
|
|
13
13
|
/** Namespace for stored auth tokens */
|
|
14
14
|
const AUTH_NAMESPACE = "enact:auth";
|
|
15
15
|
const ACCESS_TOKEN_KEY = "access_token";
|
|
@@ -26,6 +26,8 @@ const TEMPLATES = {
|
|
|
26
26
|
"tool-agents.md": toolAgentsTemplate,
|
|
27
27
|
"agent-agents.md": agentAgentsTemplate,
|
|
28
28
|
"claude.md": claudeTemplate,
|
|
29
|
+
"skill-package.yaml": defaultSkillPackageTemplate,
|
|
30
|
+
"skill-script.py": defaultSkillScriptTemplate,
|
|
29
31
|
};
|
|
30
32
|
/**
|
|
31
33
|
* Load a template and replace placeholders
|
|
@@ -42,23 +44,23 @@ function loadTemplate(templateName, replacements = {}) {
|
|
|
42
44
|
return content;
|
|
43
45
|
}
|
|
44
46
|
/**
|
|
45
|
-
* Create
|
|
47
|
+
* Create agents/skills.json for project skill tracking
|
|
46
48
|
*/
|
|
47
|
-
function
|
|
48
|
-
const
|
|
49
|
-
const
|
|
50
|
-
// Check if
|
|
51
|
-
if (existsSync(
|
|
52
|
-
info("
|
|
49
|
+
function createAgentsSkillsJson(targetDir, force) {
|
|
50
|
+
const agentsDir = join(targetDir, "agents");
|
|
51
|
+
const skillsJsonPath = join(agentsDir, "skills.json");
|
|
52
|
+
// Check if skills.json already exists
|
|
53
|
+
if (existsSync(skillsJsonPath) && !force) {
|
|
54
|
+
info("agents/skills.json already exists, skipping");
|
|
53
55
|
return false;
|
|
54
56
|
}
|
|
55
|
-
// Create
|
|
56
|
-
if (!existsSync(
|
|
57
|
-
mkdirSync(
|
|
57
|
+
// Create agents directory if it doesn't exist
|
|
58
|
+
if (!existsSync(agentsDir)) {
|
|
59
|
+
mkdirSync(agentsDir, { recursive: true });
|
|
58
60
|
}
|
|
59
|
-
// Write empty
|
|
60
|
-
const
|
|
61
|
-
writeFileSync(
|
|
61
|
+
// Write empty skills.json
|
|
62
|
+
const skillsJson = { tools: {} };
|
|
63
|
+
writeFileSync(skillsJsonPath, `${JSON.stringify(skillsJson, null, 2)}\n`, "utf-8");
|
|
62
64
|
return true;
|
|
63
65
|
}
|
|
64
66
|
/**
|
|
@@ -124,10 +126,10 @@ async function getCurrentUsername() {
|
|
|
124
126
|
*/
|
|
125
127
|
async function initHandler(options, ctx) {
|
|
126
128
|
const targetDir = ctx.cwd;
|
|
127
|
-
// Determine mode: --tool, --claude,
|
|
129
|
+
// Determine mode: --tool, --claude, --agent, or default (skill)
|
|
128
130
|
const isToolMode = options.tool;
|
|
129
131
|
const isClaudeMode = options.claude;
|
|
130
|
-
|
|
132
|
+
const isAgentMode = options.agent;
|
|
131
133
|
// Handle --tool mode: create SKILL.md + AGENTS.md for tool development
|
|
132
134
|
if (isToolMode) {
|
|
133
135
|
const manifestPath = join(targetDir, "SKILL.md");
|
|
@@ -205,49 +207,95 @@ async function initHandler(options, ctx) {
|
|
|
205
207
|
writeFileSync(claudePath, templateContent, "utf-8");
|
|
206
208
|
success(`Created CLAUDE.md: ${claudePath}`);
|
|
207
209
|
}
|
|
208
|
-
// Create
|
|
209
|
-
if (
|
|
210
|
-
success("Created
|
|
210
|
+
// Create agents/skills.json
|
|
211
|
+
if (createAgentsSkillsJson(targetDir, options.force ?? false)) {
|
|
212
|
+
success("Created agents/skills.json");
|
|
211
213
|
}
|
|
212
214
|
info("");
|
|
213
215
|
info("This file helps Claude understand how to use Enact tools in your project.");
|
|
214
216
|
return;
|
|
215
217
|
}
|
|
216
|
-
// Handle
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
218
|
+
// Handle --agent mode: create or append to AGENTS.md for projects using Enact tools
|
|
219
|
+
if (isAgentMode) {
|
|
220
|
+
const agentsPath = join(targetDir, "AGENTS.md");
|
|
221
|
+
const agentsTemplateContent = loadTemplate("agent-agents.md");
|
|
222
|
+
if (existsSync(agentsPath)) {
|
|
223
|
+
const existingContent = readFileSync(agentsPath, "utf-8");
|
|
224
|
+
if (existingContent.includes("This project uses Enact tools")) {
|
|
225
|
+
if (options.force) {
|
|
226
|
+
writeFileSync(agentsPath, agentsTemplateContent, "utf-8");
|
|
227
|
+
success(`Overwrote AGENTS.md: ${agentsPath}`);
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
info("AGENTS.md already contains Enact configuration, skipping");
|
|
231
|
+
info("Use --force to overwrite");
|
|
232
|
+
}
|
|
226
233
|
}
|
|
227
234
|
else {
|
|
228
|
-
|
|
229
|
-
|
|
235
|
+
const newContent = `${existingContent.trimEnd()}\n\n${agentsTemplateContent}`;
|
|
236
|
+
writeFileSync(agentsPath, newContent, "utf-8");
|
|
237
|
+
success(`Appended Enact configuration to existing AGENTS.md: ${agentsPath}`);
|
|
230
238
|
}
|
|
231
239
|
}
|
|
232
240
|
else {
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
241
|
+
writeFileSync(agentsPath, agentsTemplateContent, "utf-8");
|
|
242
|
+
success(`Created AGENTS.md: ${agentsPath}`);
|
|
243
|
+
}
|
|
244
|
+
if (createAgentsSkillsJson(targetDir, options.force ?? false)) {
|
|
245
|
+
success("Created agents/skills.json");
|
|
246
|
+
}
|
|
247
|
+
info("");
|
|
248
|
+
info("This file helps AI agents understand how to use Enact tools in your project.");
|
|
249
|
+
info("Run 'enact search <query>' to find tools, 'enact learn <tool>' to view docs,");
|
|
250
|
+
info("and 'enact install <tool>' to add them.");
|
|
251
|
+
return;
|
|
252
|
+
}
|
|
253
|
+
// Handle default mode: create skill.package.yaml + hello.py
|
|
254
|
+
const packagePath = join(targetDir, "skill.package.yaml");
|
|
255
|
+
const scriptPath = join(targetDir, "hello.py");
|
|
256
|
+
if (existsSync(packagePath) && !options.force) {
|
|
257
|
+
warning(`skill.package.yaml already exists at: ${packagePath}`);
|
|
258
|
+
info("Use --force to overwrite");
|
|
259
|
+
return;
|
|
260
|
+
}
|
|
261
|
+
// Get username for the tool name
|
|
262
|
+
let toolName = options.name;
|
|
263
|
+
if (!toolName) {
|
|
264
|
+
const username = await getCurrentUsername();
|
|
265
|
+
if (username) {
|
|
266
|
+
toolName = `${username}/my-tool`;
|
|
267
|
+
info(`Using logged-in username: ${username}`);
|
|
268
|
+
}
|
|
269
|
+
else {
|
|
270
|
+
toolName = "my-tool";
|
|
271
|
+
info("Not logged in - using generic tool name");
|
|
272
|
+
info("Run 'enact auth login' to use your username in tool names");
|
|
237
273
|
}
|
|
238
274
|
}
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
275
|
+
// Load templates with placeholder replacement
|
|
276
|
+
const replacements = { TOOL_NAME: toolName };
|
|
277
|
+
const packageContent = loadTemplate("skill-package.yaml", replacements);
|
|
278
|
+
const scriptContent = loadTemplate("skill-script.py");
|
|
279
|
+
// Ensure directory exists
|
|
280
|
+
if (!existsSync(targetDir)) {
|
|
281
|
+
mkdirSync(targetDir, { recursive: true });
|
|
242
282
|
}
|
|
243
|
-
//
|
|
244
|
-
|
|
245
|
-
|
|
283
|
+
// Write skill.package.yaml
|
|
284
|
+
writeFileSync(packagePath, packageContent, "utf-8");
|
|
285
|
+
success(`Created skill.package.yaml: ${packagePath}`);
|
|
286
|
+
// Write hello.py (only if it doesn't exist or --force is used)
|
|
287
|
+
if (!existsSync(scriptPath) || options.force) {
|
|
288
|
+
writeFileSync(scriptPath, scriptContent, "utf-8");
|
|
289
|
+
success(`Created hello.py: ${scriptPath}`);
|
|
290
|
+
}
|
|
291
|
+
else {
|
|
292
|
+
info("hello.py already exists, skipping (use --force to overwrite)");
|
|
246
293
|
}
|
|
247
294
|
info("");
|
|
248
|
-
info("
|
|
249
|
-
info("
|
|
250
|
-
info("
|
|
295
|
+
info("Next steps:");
|
|
296
|
+
info(" 1. Edit skill.package.yaml to customize your tool");
|
|
297
|
+
info(" 2. Run 'enact run ./' to test your tool");
|
|
298
|
+
info(" 3. Run 'enact publish' to share your tool");
|
|
251
299
|
}
|
|
252
300
|
/**
|
|
253
301
|
* Configure the init command
|
|
@@ -259,8 +307,8 @@ export function configureInitCommand(program) {
|
|
|
259
307
|
.option("-n, --name <name>", "Tool name (default: username/my-tool)")
|
|
260
308
|
.option("-f, --force", "Overwrite existing files")
|
|
261
309
|
.option("--tool", "Create a new Enact tool (SKILL.md + AGENTS.md)")
|
|
262
|
-
.option("--agent", "Create AGENTS.md +
|
|
263
|
-
.option("--claude", "Create CLAUDE.md +
|
|
310
|
+
.option("--agent", "Create AGENTS.md + agents/skills.json")
|
|
311
|
+
.option("--claude", "Create CLAUDE.md + agents/skills.json")
|
|
264
312
|
.option("-v, --verbose", "Show detailed output")
|
|
265
313
|
.action(async (options) => {
|
|
266
314
|
const ctx = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AGENTS.md template for projects that use Enact tools
|
|
3
3
|
*/
|
|
4
|
-
export declare const agentAgentsTemplate = "# AGENTS.md\n\nThis project uses Enact tools \u2014 containerized, cryptographically-signed executables.\n\n## Running Tools\n```bash\nenact run <tool-name> --args '{\"key\": \"value\"}' # Run installed tool\nenact run ./path/to/tool --args '{}' # Run local tool\n```\n\n## Finding & Installing Tools\n```bash\nenact search \"pdf extraction\" # Search registry\nenact info author/category/tool # View tool info\nenact learn author/category/tool # View tool documentation\nenact install author/category/tool # Add to project (
|
|
4
|
+
export declare const agentAgentsTemplate = "# AGENTS.md\n\nThis project uses Enact tools \u2014 containerized, cryptographically-signed executables.\n\n## Running Tools\n```bash\nenact run <tool-name> --args '{\"key\": \"value\"}' # Run installed tool\nenact run ./path/to/tool --args '{}' # Run local tool\n```\n\n## Finding & Installing Tools\n```bash\nenact search \"pdf extraction\" # Search registry\nenact info author/category/tool # View tool info\nenact learn author/category/tool # View tool documentation\nenact install author/category/tool # Add to project (agents/skills.json)\nenact install author/category/tool --global # Add globally\nenact list # List project tools\n```\n\n## Tool Output\nTools output JSON to stdout. Parse with jq or your language's JSON parser:\n```bash\nenact run tool --args '{}' | jq '.result' # Progress output is quiet by default\nenact run tool --args '{}' | jq -r '.field' # Extract a specific field as raw text\nenact run tool --args '{}' --verbose | jq '.result' # Use --verbose to see progress output\n```\n\n## Creating Local Tools\n\n**IMPORTANT: Always use `enact init --tool` to create new tools!**\n\nThis scaffolds a proper tool structure with SKILL.md and AGENTS.md templates:\n```bash\nenact init --tool # If logged in: uses username/my-tool automatically\nenact init --tool --name my-tool # Simple name\nenact init --tool --name username/my-tool # Custom hierarchical name\n```\n\n**Note:** When logged in, `enact init --tool` automatically uses your username as the namespace (e.g., `enact/my-tool`). When not logged in, it defaults to `my-tool`.\n\nThen edit the generated `SKILL.md` file to define your tool's behavior.\n\n### Tool Structure (for reference)\nThe `enact init --tool` command creates a `SKILL.md` file with this structure:\n```yaml\n---\nname: my-tool # Simple name works\n# OR\nname: namespace/tool-name # Hierarchical names recommended for organization (e.g., fun/my-tool)\ndescription: What it does\ncommand: echo \"Hello ${name}\" # Shell command to execute\ninputSchema:\n type: object\n properties:\n name: { type: string }\n---\n# My Tool\nDocumentation here.\n```\n\nRun local tools with: `enact run ./tools/<name> --args '{\"key\": \"value\"}'`\n\n## Environment & Secrets\n```bash\nenact env set API_KEY --secret --namespace author/tool # Set secret\nenact env list # List env vars\n```\n\n## Getting Help\n```bash\nenact help # Show all commands\nenact <command> --help # Help for specific command\n```\n";
|
|
5
5
|
//# sourceMappingURL=agent-agents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-agents.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/agent-agents.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"agent-agents.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/agent-agents.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,mBAAmB,21FA0E/B,CAAC"}
|
|
@@ -16,7 +16,7 @@ enact run ./path/to/tool --args '{}' # Run local tool
|
|
|
16
16
|
enact search "pdf extraction" # Search registry
|
|
17
17
|
enact info author/category/tool # View tool info
|
|
18
18
|
enact learn author/category/tool # View tool documentation
|
|
19
|
-
enact install author/category/tool # Add to project (
|
|
19
|
+
enact install author/category/tool # Add to project (agents/skills.json)
|
|
20
20
|
enact install author/category/tool --global # Add globally
|
|
21
21
|
enact list # List project tools
|
|
22
22
|
\`\`\`
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* skill.package.yaml template for default init
|
|
3
|
+
*/
|
|
4
|
+
export declare const defaultSkillPackageTemplate = "enact: \"2.0.0\"\nname: {{TOOL_NAME}}\nversion: \"0.1.0\"\ndescription: A simple tool that echoes a greeting\nfrom: python:3.12-slim\n\nscripts:\n greet: \"python /workspace/hello.py {{name}}\"\n";
|
|
5
|
+
//# sourceMappingURL=default-skill-package.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-skill-package.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/default-skill-package.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,2BAA2B,yMAQvC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* skill.package.yaml template for default init
|
|
3
|
+
*/
|
|
4
|
+
export const defaultSkillPackageTemplate = `enact: "2.0.0"
|
|
5
|
+
name: {{TOOL_NAME}}
|
|
6
|
+
version: "0.1.0"
|
|
7
|
+
description: A simple tool that echoes a greeting
|
|
8
|
+
from: python:3.12-slim
|
|
9
|
+
|
|
10
|
+
scripts:
|
|
11
|
+
greet: "python /workspace/hello.py {{name}}"
|
|
12
|
+
`;
|
|
13
|
+
//# sourceMappingURL=default-skill-package.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-skill-package.js","sourceRoot":"","sources":["../../../../src/commands/init/templates/default-skill-package.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;CAQ1C,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* hello.py script template for default init
|
|
3
|
+
*/
|
|
4
|
+
export declare const defaultSkillScriptTemplate = "import sys\nimport json\n\nname = sys.argv[1] if len(sys.argv) > 1 else \"World\"\n\nprint(json.dumps({\"message\": f\"Hello, {name}!\"}))\n";
|
|
5
|
+
//# sourceMappingURL=default-skill-script.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-skill-script.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/default-skill-script.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,0BAA0B,iJAMtC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* hello.py script template for default init
|
|
3
|
+
*/
|
|
4
|
+
export const defaultSkillScriptTemplate = `import sys
|
|
5
|
+
import json
|
|
6
|
+
|
|
7
|
+
name = sys.argv[1] if len(sys.argv) > 1 else "World"
|
|
8
|
+
|
|
9
|
+
print(json.dumps({"message": f"Hello, {name}!"}))
|
|
10
|
+
`;
|
|
11
|
+
//# sourceMappingURL=default-skill-script.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-skill-script.js","sourceRoot":"","sources":["../../../../src/commands/init/templates/default-skill-script.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;CAMzC,CAAC"}
|
|
@@ -5,4 +5,6 @@ export { toolSkillTemplate } from "./tool-skill";
|
|
|
5
5
|
export { toolAgentsTemplate } from "./tool-agents";
|
|
6
6
|
export { agentAgentsTemplate } from "./agent-agents";
|
|
7
7
|
export { claudeTemplate } from "./claude";
|
|
8
|
+
export { defaultSkillPackageTemplate } from "./default-skill-package";
|
|
9
|
+
export { defaultSkillScriptTemplate } from "./default-skill-script";
|
|
8
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/init/templates/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -5,4 +5,6 @@ export { toolSkillTemplate } from "./tool-skill";
|
|
|
5
5
|
export { toolAgentsTemplate } from "./tool-agents";
|
|
6
6
|
export { agentAgentsTemplate } from "./agent-agents";
|
|
7
7
|
export { claudeTemplate } from "./claude";
|
|
8
|
+
export { defaultSkillPackageTemplate } from "./default-skill-package";
|
|
9
|
+
export { defaultSkillScriptTemplate } from "./default-skill-script";
|
|
8
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/init/templates/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/init/templates/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* enact install command
|
|
3
3
|
*
|
|
4
4
|
* Install a tool to the project or globally.
|
|
5
|
-
* All tools are extracted to ~/.
|
|
6
|
-
* - Project install: Adds entry to
|
|
5
|
+
* All tools are extracted to ~/.agents/skills/{tool}/
|
|
6
|
+
* - Project install: Adds entry to agents/skills.json
|
|
7
7
|
* - Global install: Adds entry to ~/.enact/tools.json
|
|
8
8
|
*
|
|
9
9
|
* Supports local paths and registry tools with verification.
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* enact install command
|
|
3
3
|
*
|
|
4
4
|
* Install a tool to the project or globally.
|
|
5
|
-
* All tools are extracted to ~/.
|
|
6
|
-
* - Project install: Adds entry to
|
|
5
|
+
* All tools are extracted to ~/.agents/skills/{tool}/
|
|
6
|
+
* - Project install: Adds entry to agents/skills.json
|
|
7
7
|
* - Global install: Adds entry to ~/.enact/tools.json
|
|
8
8
|
*
|
|
9
9
|
* Supports local paths and registry tools with verification.
|
|
@@ -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 { addAlias, addMcpTool, addToolToRegistry, getInstalledVersion, getMinimumAttestations,
|
|
14
|
+
import { addAlias, addMcpTool, addToolToRegistry, getInstalledVersion, getMinimumAttestations, getProjectAgentsDir, 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
|
|
@@ -385,7 +385,7 @@ async function installFromRegistry(toolName, version, options, ctx) {
|
|
|
385
385
|
keyValue("Tool", toolName);
|
|
386
386
|
keyValue("Version", targetVersion ?? "unknown");
|
|
387
387
|
keyValue("Location", cachePath);
|
|
388
|
-
keyValue("Scope", isGlobal ? "global (~/.enact/tools.json)" : "project (
|
|
388
|
+
keyValue("Scope", isGlobal ? "global (~/.enact/tools.json)" : "project (agents/skills.json)");
|
|
389
389
|
keyValue("Size", formatBytes(bundleResult.size));
|
|
390
390
|
keyValue("Hash", `${bundleResult.hash.substring(0, 20)}...`);
|
|
391
391
|
if (options.alias) {
|
|
@@ -398,8 +398,8 @@ async function installFromRegistry(toolName, version, options, ctx) {
|
|
|
398
398
|
* Install from a local path
|
|
399
399
|
*
|
|
400
400
|
* Both global and project installs:
|
|
401
|
-
* 1. Copy tool to ~/.
|
|
402
|
-
* 2. Update
|
|
401
|
+
* 1. Copy tool to ~/.agents/skills/{tool}/
|
|
402
|
+
* 2. Update registry (global: ~/.enact/tools.json, project: agents/skills.json)
|
|
403
403
|
*/
|
|
404
404
|
async function installFromPath(sourcePath, options, ctx) {
|
|
405
405
|
const resolvedPath = resolve(ctx.cwd, sourcePath);
|
|
@@ -475,7 +475,7 @@ async function installFromPath(sourcePath, options, ctx) {
|
|
|
475
475
|
keyValue("Tool", manifest.name);
|
|
476
476
|
keyValue("Version", manifest.version ?? "unversioned");
|
|
477
477
|
keyValue("Location", cachePath);
|
|
478
|
-
keyValue("Scope", isGlobal ? "global (~/.enact/tools.json)" : "project (
|
|
478
|
+
keyValue("Scope", isGlobal ? "global (~/.enact/tools.json)" : "project (agents/skills.json)");
|
|
479
479
|
if (options.alias) {
|
|
480
480
|
keyValue("Alias", options.alias);
|
|
481
481
|
}
|
|
@@ -495,32 +495,32 @@ async function installFromName(toolSpec, options, ctx) {
|
|
|
495
495
|
return installFromRegistry(toolName, version, options, ctx);
|
|
496
496
|
}
|
|
497
497
|
/**
|
|
498
|
-
* Install all tools from project
|
|
498
|
+
* Install all tools from project agents/skills.json
|
|
499
499
|
*/
|
|
500
500
|
async function installProjectTools(options, ctx) {
|
|
501
|
-
const
|
|
502
|
-
if (!
|
|
503
|
-
info("No
|
|
501
|
+
const agentsDir = getProjectAgentsDir(ctx.cwd);
|
|
502
|
+
if (!agentsDir) {
|
|
503
|
+
info("No agents/ directory found. Nothing to install.");
|
|
504
504
|
suggest("Run 'enact install <tool>' to install a specific tool.");
|
|
505
505
|
return;
|
|
506
506
|
}
|
|
507
|
-
const
|
|
508
|
-
if (!existsSync(
|
|
509
|
-
info("No
|
|
507
|
+
const skillsJsonPath = join(agentsDir, "skills.json");
|
|
508
|
+
if (!existsSync(skillsJsonPath)) {
|
|
509
|
+
info("No agents/skills.json found. Nothing to install.");
|
|
510
510
|
suggest("Run 'enact install <tool>' to install a specific tool.");
|
|
511
511
|
return;
|
|
512
512
|
}
|
|
513
|
-
// Parse
|
|
513
|
+
// Parse skills.json
|
|
514
514
|
let toolsConfig;
|
|
515
515
|
try {
|
|
516
|
-
const content = await Bun.file(
|
|
516
|
+
const content = await Bun.file(skillsJsonPath).text();
|
|
517
517
|
toolsConfig = JSON.parse(content);
|
|
518
518
|
}
|
|
519
519
|
catch (err) {
|
|
520
|
-
throw new ManifestError(`Failed to parse
|
|
520
|
+
throw new ManifestError(`Failed to parse agents/skills.json: ${formatError(err)}`);
|
|
521
521
|
}
|
|
522
522
|
if (!toolsConfig.tools || Object.keys(toolsConfig.tools).length === 0) {
|
|
523
|
-
info("No tools specified in
|
|
523
|
+
info("No tools specified in agents/skills.json");
|
|
524
524
|
return;
|
|
525
525
|
}
|
|
526
526
|
// Install each tool
|