agents-inc 0.167.0 → 0.170.0
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/CHANGELOG.md +31 -0
- package/README.md +18 -15
- package/dist/{chunk-ZR4YPKXQ.js → chunk-3G7X2WKI.js} +4 -4
- package/dist/{chunk-JOEA52NR.js → chunk-44TE3RKH.js} +46 -2
- package/dist/chunk-44TE3RKH.js.map +1 -0
- package/dist/{chunk-V5WXIM2F.js → chunk-52HDHJ7I.js} +11 -19
- package/dist/chunk-52HDHJ7I.js.map +1 -0
- package/dist/{chunk-V3I7VQ7N.js → chunk-6HNXYYVF.js} +39 -22
- package/dist/chunk-6HNXYYVF.js.map +1 -0
- package/dist/{chunk-MAWNVT2C.js → chunk-6ZRH5RHC.js} +10 -11
- package/dist/chunk-6ZRH5RHC.js.map +1 -0
- package/dist/{chunk-G6UREQ4V.js → chunk-7RDMTR64.js} +14 -34
- package/dist/chunk-7RDMTR64.js.map +1 -0
- package/dist/{chunk-GE3WKJ6Q.js → chunk-BMRUNMPV.js} +4 -4
- package/dist/{chunk-VAPTVR3J.js → chunk-CLPUWOSA.js} +4 -4
- package/dist/{chunk-VAPTVR3J.js.map → chunk-CLPUWOSA.js.map} +1 -1
- package/dist/{chunk-HWEKHVLE.js → chunk-F2BHT5C4.js} +9 -7
- package/dist/chunk-F2BHT5C4.js.map +1 -0
- package/dist/{chunk-ZXKBERQU.js → chunk-F5EBEATU.js} +2 -2
- package/dist/{chunk-PMJWD27C.js → chunk-HED2DAXZ.js} +3 -3
- package/dist/{chunk-SAYZWCH6.js → chunk-KOLDW6SF.js} +3 -3
- package/dist/{chunk-SAYZWCH6.js.map → chunk-KOLDW6SF.js.map} +1 -1
- package/dist/{chunk-A4KDXNOT.js → chunk-MQ6CGZNJ.js} +171 -522
- package/dist/chunk-MQ6CGZNJ.js.map +1 -0
- package/dist/{chunk-G4JK7WVO.js → chunk-NCWDK6L7.js} +115 -196
- package/dist/chunk-NCWDK6L7.js.map +1 -0
- package/dist/{chunk-VRXX4D6K.js → chunk-NEZ4OAOL.js} +1 -1
- package/dist/chunk-NEZ4OAOL.js.map +1 -0
- package/dist/chunk-NIHUOWE4.js +106 -0
- package/dist/chunk-NIHUOWE4.js.map +1 -0
- package/dist/{chunk-OI2H6M5I.js → chunk-NQW25DCF.js} +2 -2
- package/dist/chunk-NQW25DCF.js.map +1 -0
- package/dist/{chunk-25MPBIK3.js → chunk-OYJQUA3D.js} +3 -3
- package/dist/{chunk-25MPBIK3.js.map → chunk-OYJQUA3D.js.map} +1 -1
- package/dist/{chunk-ENGYJCTF.js → chunk-PJWGTNOX.js} +220 -254
- package/dist/chunk-PJWGTNOX.js.map +1 -0
- package/dist/{chunk-NBXXFIIW.js → chunk-RIPSGNLU.js} +3 -3
- package/dist/chunk-RIPSGNLU.js.map +1 -0
- package/dist/{chunk-Y47EV74W.js → chunk-SZYQISA2.js} +10 -13
- package/dist/chunk-SZYQISA2.js.map +1 -0
- package/dist/{chunk-TODCQFRB.js → chunk-USVBYQSQ.js} +2 -2
- package/dist/{chunk-Y3VIRVVE.js → chunk-V3KTSP3Q.js} +50 -42
- package/dist/chunk-V3KTSP3Q.js.map +1 -0
- package/dist/{chunk-PXWG7KFO.js → chunk-WTWMGH2C.js} +2 -2
- package/dist/commands/build/marketplace.js +23 -22
- package/dist/commands/build/marketplace.js.map +1 -1
- package/dist/commands/build/plugins.js +8 -9
- package/dist/commands/build/plugins.js.map +1 -1
- package/dist/commands/compile.js +19 -20
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/doctor.js +17 -18
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/edit.js +138 -488
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/eject.js +21 -33
- package/dist/commands/eject.js.map +1 -1
- package/dist/commands/init.js +17 -45
- package/dist/commands/list.js +19 -17
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/new/marketplace.js +11 -11
- package/dist/commands/new/marketplace.js.map +1 -1
- package/dist/commands/search.js +12 -13
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/share.js +11 -12
- package/dist/commands/share.js.map +1 -1
- package/dist/commands/uninstall.js +18 -20
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/update.js +8 -9
- package/dist/commands/update.js.map +1 -1
- package/dist/components/common/removal-plan-confirm.js +2 -2
- package/dist/components/common/scroll-affordance.js +9 -0
- package/dist/components/common/select-list.js +2 -3
- package/dist/components/common/skill-agent-summary.js +11 -0
- package/dist/components/common/spinner.js +1 -1
- package/dist/{chunk-2VUYFTUB.js → components/common/summary-panel.js} +57 -31
- package/dist/components/common/summary-panel.js.map +1 -0
- package/dist/config-exports.js +1 -1
- package/dist/hooks/init.js +18 -46
- package/dist/hooks/init.js.map +1 -1
- package/dist/load-agent-defs-YMDWBFDP.js +14 -0
- package/dist/recompile-project-agents-SZ76WNTW.js +18 -0
- package/dist/{source-loader-7KZ3MD5O.js → source-loader-C5SQXZXI.js} +5 -5
- package/dist/src/agents/meta/codex-keeper/playbook.md +2 -3
- package/package.json +6 -4
- package/src/agents/meta/codex-keeper/playbook.md +2 -3
- package/src/schemas/project-config.schema.json +1 -1
- package/assets/demo.tape +0 -266
- package/dist/chunk-2VUYFTUB.js.map +0 -1
- package/dist/chunk-4NDBUJHK.js +0 -237
- package/dist/chunk-4NDBUJHK.js.map +0 -1
- package/dist/chunk-6L75SQZU.js +0 -168
- package/dist/chunk-6L75SQZU.js.map +0 -1
- package/dist/chunk-6LF4CQBY.js +0 -51
- package/dist/chunk-6LF4CQBY.js.map +0 -1
- package/dist/chunk-7JNJ52CD.js +0 -1179
- package/dist/chunk-7JNJ52CD.js.map +0 -1
- package/dist/chunk-A4KDXNOT.js.map +0 -1
- package/dist/chunk-DAIEQJIF.js +0 -48
- package/dist/chunk-DAIEQJIF.js.map +0 -1
- package/dist/chunk-ENGYJCTF.js.map +0 -1
- package/dist/chunk-G4JK7WVO.js.map +0 -1
- package/dist/chunk-G6UREQ4V.js.map +0 -1
- package/dist/chunk-HHIYT3PI.js +0 -53
- package/dist/chunk-HHIYT3PI.js.map +0 -1
- package/dist/chunk-HWEKHVLE.js.map +0 -1
- package/dist/chunk-JOEA52NR.js.map +0 -1
- package/dist/chunk-JQRJQ4SS.js +0 -118
- package/dist/chunk-JQRJQ4SS.js.map +0 -1
- package/dist/chunk-LFWLEDUG.js +0 -59
- package/dist/chunk-LFWLEDUG.js.map +0 -1
- package/dist/chunk-MAWNVT2C.js.map +0 -1
- package/dist/chunk-MPTNC32T.js +0 -92
- package/dist/chunk-MPTNC32T.js.map +0 -1
- package/dist/chunk-NBXXFIIW.js.map +0 -1
- package/dist/chunk-OI2H6M5I.js.map +0 -1
- package/dist/chunk-PNB3524H.js +0 -197
- package/dist/chunk-PNB3524H.js.map +0 -1
- package/dist/chunk-QHDPLLK6.js +0 -35
- package/dist/chunk-QHDPLLK6.js.map +0 -1
- package/dist/chunk-RAHSOJQ2.js +0 -25
- package/dist/chunk-RAHSOJQ2.js.map +0 -1
- package/dist/chunk-RZDXDMT6.js +0 -23
- package/dist/chunk-RZDXDMT6.js.map +0 -1
- package/dist/chunk-SCOQ34YM.js +0 -17
- package/dist/chunk-SCOQ34YM.js.map +0 -1
- package/dist/chunk-SXVHSOTH.js +0 -268
- package/dist/chunk-SXVHSOTH.js.map +0 -1
- package/dist/chunk-T6UWJAB3.js +0 -28
- package/dist/chunk-T6UWJAB3.js.map +0 -1
- package/dist/chunk-TSIU7DME.js +0 -43
- package/dist/chunk-TSIU7DME.js.map +0 -1
- package/dist/chunk-TTY6DPJN.js +0 -27
- package/dist/chunk-TTY6DPJN.js.map +0 -1
- package/dist/chunk-TZ2YJJKK.js +0 -292
- package/dist/chunk-TZ2YJJKK.js.map +0 -1
- package/dist/chunk-V3I7VQ7N.js.map +0 -1
- package/dist/chunk-V5WXIM2F.js.map +0 -1
- package/dist/chunk-VRXX4D6K.js.map +0 -1
- package/dist/chunk-WTJ3AY33.js +0 -31
- package/dist/chunk-WTJ3AY33.js.map +0 -1
- package/dist/chunk-WVUDLKIO.js +0 -121
- package/dist/chunk-WVUDLKIO.js.map +0 -1
- package/dist/chunk-WWIFNPJG.js +0 -317
- package/dist/chunk-WWIFNPJG.js.map +0 -1
- package/dist/chunk-XQHZPINL.js +0 -89
- package/dist/chunk-XQHZPINL.js.map +0 -1
- package/dist/chunk-XZEVWPX6.js +0 -230
- package/dist/chunk-XZEVWPX6.js.map +0 -1
- package/dist/chunk-Y3VIRVVE.js.map +0 -1
- package/dist/chunk-Y47EV74W.js.map +0 -1
- package/dist/components/wizard/category-grid.js +0 -13
- package/dist/components/wizard/checkbox-grid.js +0 -12
- package/dist/components/wizard/domain-selection.js +0 -18
- package/dist/components/wizard/run-wizard-session.js +0 -40
- package/dist/components/wizard/run-wizard-session.js.map +0 -1
- package/dist/components/wizard/scroll-affordance.js +0 -9
- package/dist/components/wizard/skill-agent-summary.js +0 -13
- package/dist/components/wizard/source-grid.js +0 -16
- package/dist/components/wizard/source-grid.js.map +0 -1
- package/dist/components/wizard/stack-selection.js +0 -17
- package/dist/components/wizard/stack-selection.js.map +0 -1
- package/dist/components/wizard/step-agents.js +0 -18
- package/dist/components/wizard/step-agents.js.map +0 -1
- package/dist/components/wizard/step-build.js +0 -18
- package/dist/components/wizard/step-build.js.map +0 -1
- package/dist/components/wizard/step-confirm.js +0 -18
- package/dist/components/wizard/step-confirm.js.map +0 -1
- package/dist/components/wizard/step-sources.js +0 -19
- package/dist/components/wizard/step-sources.js.map +0 -1
- package/dist/components/wizard/step-stack.js +0 -18
- package/dist/components/wizard/step-stack.js.map +0 -1
- package/dist/components/wizard/summary-panel.js +0 -17
- package/dist/components/wizard/summary-panel.js.map +0 -1
- package/dist/components/wizard/toast.js +0 -9
- package/dist/components/wizard/toast.js.map +0 -1
- package/dist/components/wizard/wizard-layout.js +0 -22
- package/dist/components/wizard/wizard-layout.js.map +0 -1
- package/dist/components/wizard/wizard-tabs.js +0 -11
- package/dist/components/wizard/wizard-tabs.js.map +0 -1
- package/dist/components/wizard/wizard.js +0 -39
- package/dist/components/wizard/wizard.js.map +0 -1
- package/dist/load-agent-defs-3C27ENC7.js +0 -14
- package/dist/load-agent-defs-3C27ENC7.js.map +0 -1
- package/dist/recompile-project-agents-DGNBCU3N.js +0 -18
- package/dist/recompile-project-agents-DGNBCU3N.js.map +0 -1
- package/dist/source-loader-7KZ3MD5O.js.map +0 -1
- package/dist/stores/wizard-store.js +0 -24
- package/dist/stores/wizard-store.js.map +0 -1
- /package/assets/{demo.gif → legacy-wizard.gif} +0 -0
- /package/dist/{chunk-ZR4YPKXQ.js.map → chunk-3G7X2WKI.js.map} +0 -0
- /package/dist/{chunk-GE3WKJ6Q.js.map → chunk-BMRUNMPV.js.map} +0 -0
- /package/dist/{chunk-ZXKBERQU.js.map → chunk-F5EBEATU.js.map} +0 -0
- /package/dist/{chunk-PMJWD27C.js.map → chunk-HED2DAXZ.js.map} +0 -0
- /package/dist/{chunk-TODCQFRB.js.map → chunk-USVBYQSQ.js.map} +0 -0
- /package/dist/{chunk-PXWG7KFO.js.map → chunk-WTWMGH2C.js.map} +0 -0
- /package/dist/components/{wizard → common}/scroll-affordance.js.map +0 -0
- /package/dist/components/{wizard → common}/skill-agent-summary.js.map +0 -0
- /package/dist/{components/wizard/category-grid.js.map → load-agent-defs-YMDWBFDP.js.map} +0 -0
- /package/dist/{components/wizard/checkbox-grid.js.map → recompile-project-agents-SZ76WNTW.js.map} +0 -0
- /package/dist/{components/wizard/domain-selection.js.map → source-loader-C5SQXZXI.js.map} +0 -0
|
@@ -1,5 +1,117 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
+
// ../compile/src/paths.ts
|
|
4
|
+
var CLAUDE_DIR = ".claude";
|
|
5
|
+
var SOURCE_ROOT_DIR = ".agents-inc";
|
|
6
|
+
var SOURCE_SRC_DIR = "src";
|
|
7
|
+
var SKILLS_DIR_PATH = `${SOURCE_SRC_DIR}/skills`;
|
|
8
|
+
var LOCAL_SKILLS_PATH = ".claude/skills";
|
|
9
|
+
var DEFAULT_PLUGIN_NAME = "agents-inc";
|
|
10
|
+
var DEFAULT_PUBLIC_SOURCE_NAME = DEFAULT_PLUGIN_NAME;
|
|
11
|
+
var GITHUB_PREFIX = "github:";
|
|
12
|
+
var DEFAULT_SOURCE = `${GITHUB_PREFIX}agents-inc/skills`;
|
|
13
|
+
var CLI_INVOKE_COMMAND = "npx agents-inc";
|
|
14
|
+
var EJECT_SOURCE = "eject";
|
|
15
|
+
var LOCAL_PSEUDO_CATEGORY = "local";
|
|
16
|
+
var GLOBAL_CONFIG_NAME = "global";
|
|
17
|
+
var DIRS = {
|
|
18
|
+
agents: "src/agents",
|
|
19
|
+
skills: SKILLS_DIR_PATH,
|
|
20
|
+
stacks: "src/stacks",
|
|
21
|
+
templates: "src/agents/_templates"
|
|
22
|
+
};
|
|
23
|
+
var METADATA_YAML_FILE = "metadata.yaml";
|
|
24
|
+
var PLUGIN_MANIFEST_FILE = "plugin.json";
|
|
25
|
+
var STANDARD_FILES = {
|
|
26
|
+
SKILL_MD: "SKILL.md",
|
|
27
|
+
METADATA_YAML: METADATA_YAML_FILE,
|
|
28
|
+
METADATA_JSON: "metadata.json",
|
|
29
|
+
CONFIG_YAML: "config.yaml",
|
|
30
|
+
SKILL_CATEGORIES_TS: "skill-categories.ts",
|
|
31
|
+
SKILL_RULES_TS: "skill-rules.ts",
|
|
32
|
+
AGENT_METADATA_YAML: METADATA_YAML_FILE,
|
|
33
|
+
PLUGIN_JSON: PLUGIN_MANIFEST_FILE,
|
|
34
|
+
CONFIG_TS: "config.ts",
|
|
35
|
+
CONFIG_TYPES_TS: "config-types.ts",
|
|
36
|
+
CLAUDE_MD: "CLAUDE.md",
|
|
37
|
+
README_MD: "README.md",
|
|
38
|
+
REFERENCE_MD: "reference.md",
|
|
39
|
+
IDENTITY_MD: "identity.md",
|
|
40
|
+
PLAYBOOK_MD: "playbook.md",
|
|
41
|
+
OUTPUT_MD: "output.md",
|
|
42
|
+
CRITICAL_REQUIREMENTS_MD: "critical-requirements.md",
|
|
43
|
+
CRITICAL_REMINDERS_MD: "critical-reminders.md",
|
|
44
|
+
SETTINGS_JSON: "settings.json",
|
|
45
|
+
SETTINGS_LOCAL_JSON: "settings.local.json",
|
|
46
|
+
PACKAGE_JSON: "package.json"
|
|
47
|
+
};
|
|
48
|
+
var STANDARD_DIRS = {
|
|
49
|
+
EXAMPLES: "examples",
|
|
50
|
+
SCRIPTS: "scripts",
|
|
51
|
+
SKILLS: "skills",
|
|
52
|
+
AGENTS: "agents",
|
|
53
|
+
/** Legacy per-project template override directory (`.claude/templates`). */
|
|
54
|
+
TEMPLATES: "templates"
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
// ../compile/src/scope-predicates.ts
|
|
58
|
+
function isActiveAt(entry, scope) {
|
|
59
|
+
return entry.scope === scope && !entry.excluded;
|
|
60
|
+
}
|
|
61
|
+
function isGlobalTombstone(entry) {
|
|
62
|
+
return entry.scope === "global" && !!entry.excluded;
|
|
63
|
+
}
|
|
64
|
+
function isProjectOwned(entry) {
|
|
65
|
+
return entry.scope === "project" || isGlobalTombstone(entry);
|
|
66
|
+
}
|
|
67
|
+
function activeProjectAgentNames(agents) {
|
|
68
|
+
return agents.filter((a) => isActiveAt(a, "project")).map((a) => a.name);
|
|
69
|
+
}
|
|
70
|
+
function activeAgentNames(agents) {
|
|
71
|
+
return agents.filter((a) => !a.excluded).map((a) => a.name);
|
|
72
|
+
}
|
|
73
|
+
function activeSkillScopeMap(skills) {
|
|
74
|
+
return new Map(
|
|
75
|
+
(skills ?? []).filter((s) => !s.excluded).map((s) => [s.id, s.scope])
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
function activeAgentScopeMap(agents) {
|
|
79
|
+
return new Map(
|
|
80
|
+
(agents ?? []).filter((a) => !a.excluded).map((a) => [a.name, a.scope])
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
function effectivelyExcludedSkillIds(skills) {
|
|
84
|
+
const activeIds = new Set(skills.filter((s) => !s.excluded).map((s) => s.id));
|
|
85
|
+
return new Set(
|
|
86
|
+
skills.filter((s) => s.excluded && !activeIds.has(s.id)).map((s) => s.id)
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// src/cli/consts.ts
|
|
91
|
+
import os from "os";
|
|
92
|
+
import path from "path";
|
|
93
|
+
import { fileURLToPath } from "url";
|
|
94
|
+
|
|
95
|
+
// ../compile/src/catalog.ts
|
|
96
|
+
function isExclusiveCategory(catalog, category) {
|
|
97
|
+
return catalog.categories[category]?.exclusive === true;
|
|
98
|
+
}
|
|
99
|
+
function categoryDomain(catalog, category) {
|
|
100
|
+
return catalog.categories[category]?.domain;
|
|
101
|
+
}
|
|
102
|
+
function skillDomain(catalog, skillId) {
|
|
103
|
+
const skill = catalog.skills[skillId];
|
|
104
|
+
return skill && categoryDomain(catalog, skill.category);
|
|
105
|
+
}
|
|
106
|
+
function byCategoryDeclarationOrder(catalog) {
|
|
107
|
+
const declarationRank = new Map(
|
|
108
|
+
Object.keys(catalog.categories).map((category, rank) => [category, rank])
|
|
109
|
+
);
|
|
110
|
+
const afterEveryDeclared = declarationRank.size;
|
|
111
|
+
const rankOf = (category) => declarationRank.get(category) ?? afterEveryDeclared;
|
|
112
|
+
return (a, b) => rankOf(a) - rankOf(b);
|
|
113
|
+
}
|
|
114
|
+
|
|
3
115
|
// ../matrix/src/vendor/generated/source-types.ts
|
|
4
116
|
var SKILL_IDS = [
|
|
5
117
|
"ai-infrastructure-huggingface-inference",
|
|
@@ -377,51 +489,6 @@ var AGENT_NAMES = [
|
|
|
377
489
|
"web-tester"
|
|
378
490
|
];
|
|
379
491
|
|
|
380
|
-
// ../matrix/src/read-model/domains.ts
|
|
381
|
-
var DOMAIN_ORDER = [
|
|
382
|
-
"web",
|
|
383
|
-
"api",
|
|
384
|
-
"ai",
|
|
385
|
-
"mobile",
|
|
386
|
-
"desktop",
|
|
387
|
-
"cli",
|
|
388
|
-
"infra",
|
|
389
|
-
"meta",
|
|
390
|
-
"shared"
|
|
391
|
-
];
|
|
392
|
-
var DOMAIN_LABELS = {
|
|
393
|
-
web: "Web",
|
|
394
|
-
api: "API",
|
|
395
|
-
ai: "AI",
|
|
396
|
-
mobile: "Mobile",
|
|
397
|
-
desktop: "Desktop",
|
|
398
|
-
cli: "CLI",
|
|
399
|
-
infra: "Infra",
|
|
400
|
-
meta: "Meta",
|
|
401
|
-
shared: "Shared"
|
|
402
|
-
};
|
|
403
|
-
var DOMAIN_DESCRIPTIONS = {
|
|
404
|
-
web: "Frontend web applications",
|
|
405
|
-
api: "Backend APIs and services",
|
|
406
|
-
ai: "AI and LLM integrations",
|
|
407
|
-
mobile: "Mobile applications",
|
|
408
|
-
desktop: "Desktop applications",
|
|
409
|
-
cli: "Command-line tools",
|
|
410
|
-
infra: "CI/CD, deployment, and infrastructure",
|
|
411
|
-
meta: "Design patterns, code review, and research methodology",
|
|
412
|
-
shared: "Shared utilities and methodology"
|
|
413
|
-
};
|
|
414
|
-
var DOMAIN_IDS = new Set(DOMAINS);
|
|
415
|
-
var isDomain = (domainId) => DOMAIN_IDS.has(domainId);
|
|
416
|
-
var agentDomainOf = (agentId) => {
|
|
417
|
-
const prefix = agentId.split("-")[0];
|
|
418
|
-
return prefix && isDomain(prefix) ? prefix : "meta";
|
|
419
|
-
};
|
|
420
|
-
var DOMAIN_POSITION = new Map(
|
|
421
|
-
DOMAIN_ORDER.map((domain, index) => [domain, index])
|
|
422
|
-
);
|
|
423
|
-
var compareDomains = (a, b) => (DOMAIN_POSITION.get(a) ?? DOMAIN_ORDER.length) - (DOMAIN_POSITION.get(b) ?? DOMAIN_ORDER.length);
|
|
424
|
-
|
|
425
492
|
// ../matrix/src/read-model/collections.ts
|
|
426
493
|
var groupBy = (items, keyOf) => {
|
|
427
494
|
const groups = /* @__PURE__ */ new Map();
|
|
@@ -3949,7 +4016,7 @@ var BUILT_IN_MATRIX = {
|
|
|
3949
4016
|
{
|
|
3950
4017
|
skillIds: ["web-framework-react"],
|
|
3951
4018
|
needsAny: false,
|
|
3952
|
-
reason: "Composition patterns are React surface \u2014
|
|
4019
|
+
reason: "Composition patterns are React surface \u2014 JSX parts sharing context, ref as a prop, asChild/render via cloneElement, useId"
|
|
3953
4020
|
}
|
|
3954
4021
|
],
|
|
3955
4022
|
alternatives: [],
|
|
@@ -3960,7 +4027,7 @@ var BUILT_IN_MATRIX = {
|
|
|
3960
4027
|
slug: "expressive-typescript",
|
|
3961
4028
|
displayName: "Expressive TypeScript",
|
|
3962
4029
|
description: "Readable functional patterns and named abstractions",
|
|
3963
|
-
usageGuidance: "Use when writing or refactoring TypeScript functions, data transformations, store actions, or any code that mixes logic levels. Apply the orchestrator pattern and extract until the code reads like prose.",
|
|
4030
|
+
usageGuidance: "Use when writing or refactoring TypeScript functions, data transformations, store actions, or any code that mixes logic levels; when deciding whether an expression should be extracted and named; or when modelling a fixed set of states for exhaustive handling. Apply the orchestrator pattern and extract until the code reads like prose.",
|
|
3964
4031
|
category: "meta-design",
|
|
3965
4032
|
author: "@vince",
|
|
3966
4033
|
conflictsWith: [],
|
|
@@ -4058,7 +4125,7 @@ var BUILT_IN_MATRIX = {
|
|
|
4058
4125
|
slug: "api-reviewing",
|
|
4059
4126
|
displayName: "API Reviewing",
|
|
4060
4127
|
description: "Injection, boundary validation, authorization, data exposure",
|
|
4061
|
-
usageGuidance: "Use when reviewing
|
|
4128
|
+
usageGuidance: "Use when reviewing a diff that adds or changes API routes or handlers, database queries, authentication or authorization middleware, or server code that reads files, starts processes or fetches URLs using request data.",
|
|
4062
4129
|
category: "meta-reviewing",
|
|
4063
4130
|
author: "@vince",
|
|
4064
4131
|
conflictsWith: [],
|
|
@@ -4071,8 +4138,8 @@ var BUILT_IN_MATRIX = {
|
|
|
4071
4138
|
id: "meta-reviewing-cli-reviewing",
|
|
4072
4139
|
slug: "cli-reviewing",
|
|
4073
4140
|
displayName: "CLI Reviewing",
|
|
4074
|
-
description: "
|
|
4075
|
-
usageGuidance: "Use when reviewing
|
|
4141
|
+
description: "Review exit codes, signals, streams and prompts in CLIs",
|
|
4142
|
+
usageGuidance: "Use when reviewing a command-line tool's commands, entry point, prompts, output or tests, whichever parser or prompt library it uses. Covers exit codes, cancellation and signals, non-TTY behaviour, the stdout/stderr split, error text, config precedence, subprocess safety and test adequacy.",
|
|
4076
4143
|
category: "meta-reviewing",
|
|
4077
4144
|
author: "@vince",
|
|
4078
4145
|
conflictsWith: [],
|
|
@@ -4086,7 +4153,7 @@ var BUILT_IN_MATRIX = {
|
|
|
4086
4153
|
slug: "infra-reviewing",
|
|
4087
4154
|
displayName: "Infra Reviewing",
|
|
4088
4155
|
description: "Supply-chain pinning, secret exposure, container hygiene",
|
|
4089
|
-
usageGuidance: "Use when reviewing diffs that touch CI/CD workflows, Dockerfiles, deployment configs, or IaC. Covers action and base-image pinning, secret handling, non-root containers, layer caching,
|
|
4156
|
+
usageGuidance: "Use when reviewing diffs that touch CI/CD workflows, Dockerfiles, deployment configs, or IaC. Covers action and base-image pinning, secret handling, privileged workflow triggers and script injection, least-privilege permissions, non-root containers, layer caching, and deployment safety.",
|
|
4090
4157
|
category: "meta-reviewing",
|
|
4091
4158
|
author: "@vince",
|
|
4092
4159
|
conflictsWith: [],
|
|
@@ -4100,7 +4167,7 @@ var BUILT_IN_MATRIX = {
|
|
|
4100
4167
|
slug: "reviewing",
|
|
4101
4168
|
displayName: "Code Review",
|
|
4102
4169
|
description: "Code review guidance",
|
|
4103
|
-
usageGuidance: "Use when reviewing
|
|
4170
|
+
usageGuidance: "Use when reviewing a diff or PR, writing review findings, or deciding whether to approve or request changes.",
|
|
4104
4171
|
category: "meta-reviewing",
|
|
4105
4172
|
author: "@vince",
|
|
4106
4173
|
conflictsWith: [],
|
|
@@ -4114,7 +4181,7 @@ var BUILT_IN_MATRIX = {
|
|
|
4114
4181
|
slug: "web-reviewing",
|
|
4115
4182
|
displayName: "Web Reviewing",
|
|
4116
4183
|
description: "React hooks, accessibility, and render performance",
|
|
4117
|
-
usageGuidance: "Use when reviewing
|
|
4184
|
+
usageGuidance: "Use when reviewing a diff that adds or changes React components or custom hooks \u2014 hook order and dependency arrays, effect and ref cleanup, derived state, list keys and component identity, controlled inputs, memoization claims, and keyboard and screen-reader access for the elements the diff adds.",
|
|
4118
4185
|
category: "meta-reviewing",
|
|
4119
4186
|
author: "@vince",
|
|
4120
4187
|
conflictsWith: [],
|
|
@@ -9813,6 +9880,51 @@ var builtInMatrixSchema = z.object({
|
|
|
9813
9880
|
var MATRIX = builtInMatrixSchema.parse(BUILT_IN_MATRIX);
|
|
9814
9881
|
var MATRIX_VERSION = MATRIX.version;
|
|
9815
9882
|
|
|
9883
|
+
// ../matrix/src/read-model/domains.ts
|
|
9884
|
+
var DOMAIN_ORDER = [
|
|
9885
|
+
"web",
|
|
9886
|
+
"api",
|
|
9887
|
+
"ai",
|
|
9888
|
+
"mobile",
|
|
9889
|
+
"desktop",
|
|
9890
|
+
"cli",
|
|
9891
|
+
"infra",
|
|
9892
|
+
"meta",
|
|
9893
|
+
"shared"
|
|
9894
|
+
];
|
|
9895
|
+
var DOMAIN_LABELS = {
|
|
9896
|
+
web: "Web",
|
|
9897
|
+
api: "API",
|
|
9898
|
+
ai: "AI",
|
|
9899
|
+
mobile: "Mobile",
|
|
9900
|
+
desktop: "Desktop",
|
|
9901
|
+
cli: "CLI",
|
|
9902
|
+
infra: "Infra",
|
|
9903
|
+
meta: "Meta",
|
|
9904
|
+
shared: "Shared"
|
|
9905
|
+
};
|
|
9906
|
+
var DOMAIN_DESCRIPTIONS = {
|
|
9907
|
+
web: "Frontend web applications",
|
|
9908
|
+
api: "Backend APIs and services",
|
|
9909
|
+
ai: "AI and LLM integrations",
|
|
9910
|
+
mobile: "Mobile applications",
|
|
9911
|
+
desktop: "Desktop applications",
|
|
9912
|
+
cli: "Command-line tools",
|
|
9913
|
+
infra: "CI/CD, deployment, and infrastructure",
|
|
9914
|
+
meta: "Design patterns, code review, and research methodology",
|
|
9915
|
+
shared: "Shared utilities and methodology"
|
|
9916
|
+
};
|
|
9917
|
+
var DOMAIN_IDS = new Set(DOMAINS);
|
|
9918
|
+
var isDomain = (domainId) => DOMAIN_IDS.has(domainId);
|
|
9919
|
+
var agentDomainOf = (agentId) => {
|
|
9920
|
+
const prefix = agentId.split("-")[0];
|
|
9921
|
+
return prefix && isDomain(prefix) ? prefix : "meta";
|
|
9922
|
+
};
|
|
9923
|
+
var DOMAIN_POSITION = new Map(
|
|
9924
|
+
DOMAIN_ORDER.map((domain, index) => [domain, index])
|
|
9925
|
+
);
|
|
9926
|
+
var compareDomains = (a, b) => (DOMAIN_POSITION.get(a) ?? DOMAIN_ORDER.length) - (DOMAIN_POSITION.get(b) ?? DOMAIN_ORDER.length);
|
|
9927
|
+
|
|
9816
9928
|
// ../matrix/src/read-model/catalog.ts
|
|
9817
9929
|
var toCatalogSkill = (skill, domainId) => ({
|
|
9818
9930
|
id: skill.id,
|
|
@@ -10046,6 +10158,12 @@ import { z as z2 } from "zod";
|
|
|
10046
10158
|
|
|
10047
10159
|
// ../matrix/src/vendor/matrix.ts
|
|
10048
10160
|
var MODEL_NAMES = ["sonnet", "opus", "haiku", "fable", "inherit"];
|
|
10161
|
+
var CODEX_MODEL_NAMES = [
|
|
10162
|
+
"gpt-6-astra",
|
|
10163
|
+
"gpt-5.6-sol",
|
|
10164
|
+
"gpt-5.6-terra",
|
|
10165
|
+
"gpt-5.6-luna"
|
|
10166
|
+
];
|
|
10049
10167
|
var EFFORT_NAMES = ["low", "medium", "high", "xhigh", "max"];
|
|
10050
10168
|
|
|
10051
10169
|
// ../matrix/src/built-in-agents.ts
|
|
@@ -10362,10 +10480,14 @@ var toCatalogStack = (stack) => ({
|
|
|
10362
10480
|
var buildStacks = (matrix) => matrix.suggestedStacks.map(toCatalogStack);
|
|
10363
10481
|
var STACKS = buildStacks(MATRIX);
|
|
10364
10482
|
var rosteredAgents = (stack) => Object.keys(stack.skills).map((agentId) => subAgentById(agentId)).filter((agent) => agent !== void 0).map((agent) => agent.id);
|
|
10483
|
+
var skillsOf = (stack, agentId) => Object.values(stack.skills[agentId] ?? {}).flat();
|
|
10484
|
+
var toSkillLessAgentIds = (stack) => rosteredAgents(stack).filter(
|
|
10485
|
+
(agentId) => skillsOf(stack, agentId).length === 0
|
|
10486
|
+
);
|
|
10365
10487
|
var toAgentsBySkill = (stack) => {
|
|
10366
10488
|
const agentsBySkill = {};
|
|
10367
10489
|
for (const agentId of rosteredAgents(stack)) {
|
|
10368
|
-
for (const skillId of
|
|
10490
|
+
for (const skillId of skillsOf(stack, agentId)) {
|
|
10369
10491
|
const agents = agentsBySkill[skillId] ??= [];
|
|
10370
10492
|
if (!agents.includes(agentId)) agents.push(agentId);
|
|
10371
10493
|
}
|
|
@@ -10394,7 +10516,8 @@ var createStackExpander = (matrix) => (stackId) => {
|
|
|
10394
10516
|
if (!stack) return void 0;
|
|
10395
10517
|
return {
|
|
10396
10518
|
skillIds: stack.allSkillIds,
|
|
10397
|
-
assignmentsBySkill: toAssignmentsBySkill(stack)
|
|
10519
|
+
assignmentsBySkill: toAssignmentsBySkill(stack),
|
|
10520
|
+
skillLessAgentIds: toSkillLessAgentIds(stack)
|
|
10398
10521
|
};
|
|
10399
10522
|
};
|
|
10400
10523
|
var expandStack = createStackExpander(MATRIX);
|
|
@@ -10563,7 +10686,7 @@ var DISCOURAGED_PAIRS = Object.values(CATALOG.skillsById).flatMap(
|
|
|
10563
10686
|
|
|
10564
10687
|
// ../matrix/src/seed.ts
|
|
10565
10688
|
import { z as z3 } from "zod";
|
|
10566
|
-
var SEED_VERSION =
|
|
10689
|
+
var SEED_VERSION = 6;
|
|
10567
10690
|
var seedModelSchema = z3.enum(["opus", "fable", "sonnet", "haiku"]);
|
|
10568
10691
|
var seedEffortSchema = z3.enum([
|
|
10569
10692
|
"low",
|
|
@@ -10584,11 +10707,13 @@ var seedSkillSchema = z3.object({
|
|
|
10584
10707
|
var seedAgentSchema = z3.object({
|
|
10585
10708
|
on: z3.boolean().exactOptional(),
|
|
10586
10709
|
model: seedModelSchema.exactOptional(),
|
|
10710
|
+
// A string rather than the CLI's enum: Codex retires ids, and an enum would
|
|
10711
|
+
// turn each retirement into a version bump. Each consumer drops an id it does
|
|
10712
|
+
// not offer.
|
|
10713
|
+
codexModel: z3.string().min(1).exactOptional(),
|
|
10587
10714
|
effort: seedEffortSchema.exactOptional(),
|
|
10588
|
-
//
|
|
10589
|
-
//
|
|
10590
|
-
// once in `DEFAULT_SELECTION_OPTIONS` — so the resting choice never travels,
|
|
10591
|
-
// exactly as a resting model does not.
|
|
10715
|
+
// Absent means `DEFAULT_SELECTION_OPTIONS.scope`, so the resting choice never
|
|
10716
|
+
// travels.
|
|
10592
10717
|
scope: seedScopeSchema.exactOptional()
|
|
10593
10718
|
});
|
|
10594
10719
|
var MAX_EXTERNAL_SKILL_BYTES = 262144;
|
|
@@ -10608,10 +10733,7 @@ var seedSkillTreeSchema = z3.record(z3.string().min(1), z3.string()).refine((fil
|
|
|
10608
10733
|
var seedExternalSkillSchema = z3.object({
|
|
10609
10734
|
displayName: z3.string().min(1),
|
|
10610
10735
|
description: z3.string(),
|
|
10611
|
-
//
|
|
10612
|
-
// confirmed. Without it the skill has nowhere to render and no sub-agent
|
|
10613
|
-
// reach, which is the whole difference between a catalogue entry and an
|
|
10614
|
-
// orphan section.
|
|
10736
|
+
// The placement the user confirmed at add time, never derived.
|
|
10615
10737
|
categoryId: z3.string().min(1),
|
|
10616
10738
|
// GitHub's own `owner/name`.
|
|
10617
10739
|
repo: z3.string().min(1),
|
|
@@ -10625,45 +10747,18 @@ var seedPayloadSchema = z3.object({
|
|
|
10625
10747
|
// decode — it explains why some ids were skipped.
|
|
10626
10748
|
matrixVersion: z3.string(),
|
|
10627
10749
|
stackId: z3.string().nullable(),
|
|
10628
|
-
// The sentence the sharer's config records about itself
|
|
10629
|
-
//
|
|
10630
|
-
// `stackId` deliberately does not: a saved config records a stack's
|
|
10631
|
-
// EXPANSION and never the id it came from, so the receiver has no id to
|
|
10632
|
-
// resolve one out of and the line is simply lost.
|
|
10633
|
-
//
|
|
10634
|
-
// Carrying the id instead would be worse rather than equivalent. A resolvable
|
|
10635
|
-
// stack id does exactly two things on the way in — it supplies this
|
|
10636
|
-
// description, and it overlays the stack YAML's own `preloaded` flags — and
|
|
10637
|
-
// the assignments above already carry per-(skill, sub-agent) load state in
|
|
10638
|
-
// full, so the second is redundant. What the id would ADD is the stack's
|
|
10639
|
-
// whole roster: the receiving install spreads the loaded stack first and lets
|
|
10640
|
-
// the saved stack win per agent, so a stack sub-agent the sharer REMOVED
|
|
10641
|
-
// comes back wholesale. Absent means a config that describes itself with
|
|
10642
|
-
// nothing, which is every payload the web app mints.
|
|
10750
|
+
// The sentence the sharer's config records about itself. It travels instead
|
|
10751
|
+
// of a stack id, which would bring back the stack's whole roster on install.
|
|
10643
10752
|
description: z3.string().exactOptional(),
|
|
10644
|
-
// Where the skills
|
|
10645
|
-
//
|
|
10646
|
-
// its manifest gives it is read from the fetched marketplace.json, so
|
|
10647
|
-
// carrying that too would let a payload disagree with the repository it
|
|
10648
|
-
// names. Absent is the default public catalogue, which is why a payload that
|
|
10649
|
-
// installs from it looks exactly as it did before this field existed.
|
|
10753
|
+
// Where the skills are fetched from, as `--marketplace` takes it. Absent is
|
|
10754
|
+
// the default public catalogue.
|
|
10650
10755
|
marketplace: z3.string().exactOptional(),
|
|
10651
|
-
// Sparse
|
|
10652
|
-
// is deliberately absent: deselected setup never leaves the browser.
|
|
10756
|
+
// Sparse: presence is selection.
|
|
10653
10757
|
skills: z3.record(z3.string(), seedSkillSchema),
|
|
10654
|
-
// Skill id → its whole directory, for
|
|
10655
|
-
// resolve. Keyed by the same id `skills` uses, so a selection reads one map
|
|
10656
|
-
// whichever kind of skill it names. Absent is the ordinary case — a payload
|
|
10657
|
-
// built from the catalogue alone — which is why one looks exactly as it did
|
|
10658
|
-
// before content travelled. Content is the expensive part of a payload, so an
|
|
10659
|
-
// added skill nobody selected has no entry here either.
|
|
10758
|
+
// Skill id → its whole directory, for ids no catalogue can resolve.
|
|
10660
10759
|
external: z3.record(z3.string(), seedExternalSkillSchema).exactOptional(),
|
|
10661
|
-
// Sparse
|
|
10662
|
-
//
|
|
10663
|
-
// statement, not an install: what installs is decided by assignments and
|
|
10664
|
-
// `on: true` alone, so a derived-off agent can still travel its overrides.
|
|
10665
|
-
// Only an agent pinned *off* is omitted outright — with the assignment rows
|
|
10666
|
-
// naming it, since the sharer's own counts exclude them.
|
|
10760
|
+
// Sparse: an agent with nothing to say has no entry. Presence is not an
|
|
10761
|
+
// install — assignments and `on: true` decide that.
|
|
10667
10762
|
agents: z3.record(z3.string(), seedAgentSchema)
|
|
10668
10763
|
});
|
|
10669
10764
|
var isSeedScopePairWritable = (skillScope, agentScope) => !(skillScope === "project" && agentScope === "global");
|
|
@@ -10722,7 +10817,7 @@ var matrixSkillSchema = z4.object({
|
|
|
10722
10817
|
// `catalog.json` and make every marketplace look like it states none.
|
|
10723
10818
|
usageGuidance: z4.string().exactOptional(),
|
|
10724
10819
|
// The SKILL.md description a compiled sub-agent's activation table shows —
|
|
10725
|
-
// `description` is the
|
|
10820
|
+
// `description` is the short label. The preview renders this one so
|
|
10726
10821
|
// it shows what the install writes (CLI-898); absent on older catalogues.
|
|
10727
10822
|
activationDescription: z4.string().exactOptional(),
|
|
10728
10823
|
category: idSchema,
|
|
@@ -10789,122 +10884,6 @@ var skillIndexSchema = z5.object({
|
|
|
10789
10884
|
});
|
|
10790
10885
|
var skillIndexFreshnessSchema = z5.enum(["fresh", "stale"]);
|
|
10791
10886
|
|
|
10792
|
-
// ../compile/src/domain-order.ts
|
|
10793
|
-
function orderDomains(domains) {
|
|
10794
|
-
const builtInSet = new Set(DOMAIN_ORDER);
|
|
10795
|
-
return [
|
|
10796
|
-
...domains.filter((d) => !builtInSet.has(d)).sort(),
|
|
10797
|
-
...DOMAIN_ORDER.filter((d) => domains.includes(d))
|
|
10798
|
-
];
|
|
10799
|
-
}
|
|
10800
|
-
|
|
10801
|
-
// ../compile/src/paths.ts
|
|
10802
|
-
var CLAUDE_DIR = ".claude";
|
|
10803
|
-
var SOURCE_ROOT_DIR = ".agents-inc";
|
|
10804
|
-
var SOURCE_SRC_DIR = "src";
|
|
10805
|
-
var SKILLS_DIR_PATH = `${SOURCE_SRC_DIR}/skills`;
|
|
10806
|
-
var LOCAL_SKILLS_PATH = ".claude/skills";
|
|
10807
|
-
var DEFAULT_PLUGIN_NAME = "agents-inc";
|
|
10808
|
-
var DEFAULT_PUBLIC_SOURCE_NAME = DEFAULT_PLUGIN_NAME;
|
|
10809
|
-
var GITHUB_PREFIX = "github:";
|
|
10810
|
-
var DEFAULT_SOURCE = `${GITHUB_PREFIX}agents-inc/skills`;
|
|
10811
|
-
var CLI_INVOKE_COMMAND = "npx agents-inc";
|
|
10812
|
-
var EJECT_SOURCE = "eject";
|
|
10813
|
-
var LOCAL_PSEUDO_CATEGORY = "local";
|
|
10814
|
-
var GLOBAL_CONFIG_NAME = "global";
|
|
10815
|
-
var DIRS = {
|
|
10816
|
-
agents: "src/agents",
|
|
10817
|
-
skills: SKILLS_DIR_PATH,
|
|
10818
|
-
stacks: "src/stacks",
|
|
10819
|
-
templates: "src/agents/_templates"
|
|
10820
|
-
};
|
|
10821
|
-
var METADATA_YAML_FILE = "metadata.yaml";
|
|
10822
|
-
var PLUGIN_MANIFEST_FILE = "plugin.json";
|
|
10823
|
-
var STANDARD_FILES = {
|
|
10824
|
-
SKILL_MD: "SKILL.md",
|
|
10825
|
-
METADATA_YAML: METADATA_YAML_FILE,
|
|
10826
|
-
METADATA_JSON: "metadata.json",
|
|
10827
|
-
CONFIG_YAML: "config.yaml",
|
|
10828
|
-
SKILL_CATEGORIES_TS: "skill-categories.ts",
|
|
10829
|
-
SKILL_RULES_TS: "skill-rules.ts",
|
|
10830
|
-
AGENT_METADATA_YAML: METADATA_YAML_FILE,
|
|
10831
|
-
PLUGIN_JSON: PLUGIN_MANIFEST_FILE,
|
|
10832
|
-
CONFIG_TS: "config.ts",
|
|
10833
|
-
CONFIG_TYPES_TS: "config-types.ts",
|
|
10834
|
-
CLAUDE_MD: "CLAUDE.md",
|
|
10835
|
-
README_MD: "README.md",
|
|
10836
|
-
REFERENCE_MD: "reference.md",
|
|
10837
|
-
IDENTITY_MD: "identity.md",
|
|
10838
|
-
PLAYBOOK_MD: "playbook.md",
|
|
10839
|
-
OUTPUT_MD: "output.md",
|
|
10840
|
-
CRITICAL_REQUIREMENTS_MD: "critical-requirements.md",
|
|
10841
|
-
CRITICAL_REMINDERS_MD: "critical-reminders.md",
|
|
10842
|
-
SETTINGS_JSON: "settings.json",
|
|
10843
|
-
SETTINGS_LOCAL_JSON: "settings.local.json",
|
|
10844
|
-
PACKAGE_JSON: "package.json"
|
|
10845
|
-
};
|
|
10846
|
-
var STANDARD_DIRS = {
|
|
10847
|
-
EXAMPLES: "examples",
|
|
10848
|
-
SCRIPTS: "scripts",
|
|
10849
|
-
SKILLS: "skills",
|
|
10850
|
-
AGENTS: "agents",
|
|
10851
|
-
/** Legacy per-project template override directory (`.claude/templates`). */
|
|
10852
|
-
TEMPLATES: "templates"
|
|
10853
|
-
};
|
|
10854
|
-
|
|
10855
|
-
// ../compile/src/scope-predicates.ts
|
|
10856
|
-
function isActiveAt(entry, scope) {
|
|
10857
|
-
return entry.scope === scope && !entry.excluded;
|
|
10858
|
-
}
|
|
10859
|
-
function isGlobalTombstone(entry) {
|
|
10860
|
-
return entry.scope === "global" && !!entry.excluded;
|
|
10861
|
-
}
|
|
10862
|
-
function isProjectOwned(entry) {
|
|
10863
|
-
return entry.scope === "project" || isGlobalTombstone(entry);
|
|
10864
|
-
}
|
|
10865
|
-
function activeProjectAgentNames(agents) {
|
|
10866
|
-
return agents.filter((a) => isActiveAt(a, "project")).map((a) => a.name);
|
|
10867
|
-
}
|
|
10868
|
-
function activeAgentNames(agents) {
|
|
10869
|
-
return agents.filter((a) => !a.excluded).map((a) => a.name);
|
|
10870
|
-
}
|
|
10871
|
-
function activeSkillScopeMap(skills) {
|
|
10872
|
-
return new Map(
|
|
10873
|
-
(skills ?? []).filter((s) => !s.excluded).map((s) => [s.id, s.scope])
|
|
10874
|
-
);
|
|
10875
|
-
}
|
|
10876
|
-
function activeAgentScopeMap(agents) {
|
|
10877
|
-
return new Map(
|
|
10878
|
-
(agents ?? []).filter((a) => !a.excluded).map((a) => [a.name, a.scope])
|
|
10879
|
-
);
|
|
10880
|
-
}
|
|
10881
|
-
function effectivelyExcludedSkillIds(skills) {
|
|
10882
|
-
const activeIds = new Set(skills.filter((s) => !s.excluded).map((s) => s.id));
|
|
10883
|
-
return new Set(
|
|
10884
|
-
skills.filter((s) => s.excluded && !activeIds.has(s.id)).map((s) => s.id)
|
|
10885
|
-
);
|
|
10886
|
-
}
|
|
10887
|
-
|
|
10888
|
-
// ../compile/src/catalog.ts
|
|
10889
|
-
function isExclusiveCategory(catalog, category) {
|
|
10890
|
-
return catalog.categories[category]?.exclusive === true;
|
|
10891
|
-
}
|
|
10892
|
-
function categoryDomain(catalog, category) {
|
|
10893
|
-
return catalog.categories[category]?.domain;
|
|
10894
|
-
}
|
|
10895
|
-
function skillDomain(catalog, skillId) {
|
|
10896
|
-
const skill = catalog.skills[skillId];
|
|
10897
|
-
return skill && categoryDomain(catalog, skill.category);
|
|
10898
|
-
}
|
|
10899
|
-
function byCategoryDeclarationOrder(catalog) {
|
|
10900
|
-
const declarationRank = new Map(
|
|
10901
|
-
Object.keys(catalog.categories).map((category, rank) => [category, rank])
|
|
10902
|
-
);
|
|
10903
|
-
const afterEveryDeclared = declarationRank.size;
|
|
10904
|
-
const rankOf = (category) => declarationRank.get(category) ?? afterEveryDeclared;
|
|
10905
|
-
return (a, b) => rankOf(a) - rankOf(b);
|
|
10906
|
-
}
|
|
10907
|
-
|
|
10908
10887
|
// ../compile/src/catalog-seat.ts
|
|
10909
10888
|
var seated = MATRIX;
|
|
10910
10889
|
function seatCatalog(catalog) {
|
|
@@ -10920,14 +10899,32 @@ var DISCARD = {
|
|
|
10920
10899
|
verbose: () => void 0
|
|
10921
10900
|
};
|
|
10922
10901
|
var seated2 = DISCARD;
|
|
10902
|
+
function seatDiagnostics(diagnostics2) {
|
|
10903
|
+
seated2 = diagnostics2;
|
|
10904
|
+
}
|
|
10923
10905
|
function diagnostics() {
|
|
10924
10906
|
return seated2;
|
|
10925
10907
|
}
|
|
10926
10908
|
|
|
10909
|
+
// ../compile/src/domain-order.ts
|
|
10910
|
+
function orderDomains(domains) {
|
|
10911
|
+
const builtInSet = new Set(DOMAIN_ORDER);
|
|
10912
|
+
return [
|
|
10913
|
+
...domains.filter((d) => !builtInSet.has(d)).sort(),
|
|
10914
|
+
...DOMAIN_ORDER.filter((d) => domains.includes(d))
|
|
10915
|
+
];
|
|
10916
|
+
}
|
|
10917
|
+
|
|
10927
10918
|
// ../compile/src/string.ts
|
|
10928
10919
|
function bytewise(a, b) {
|
|
10929
10920
|
return a < b ? -1 : a > b ? 1 : 0;
|
|
10930
10921
|
}
|
|
10922
|
+
function inAnEnglishList(items) {
|
|
10923
|
+
const last = items.at(-1);
|
|
10924
|
+
if (last === void 0) return "";
|
|
10925
|
+
if (items.length === 1) return last;
|
|
10926
|
+
return `${items.slice(0, -1).join(", ")} and ${last}`;
|
|
10927
|
+
}
|
|
10931
10928
|
|
|
10932
10929
|
// ../compile/src/selection.ts
|
|
10933
10930
|
import { groupBy as groupBy2 } from "remeda";
|
|
@@ -11028,9 +11025,6 @@ function sourceDirName(provider) {
|
|
|
11028
11025
|
}
|
|
11029
11026
|
|
|
11030
11027
|
// src/cli/consts.ts
|
|
11031
|
-
import os from "os";
|
|
11032
|
-
import path from "path";
|
|
11033
|
-
import { fileURLToPath } from "url";
|
|
11034
11028
|
var __filename2 = fileURLToPath(import.meta.url);
|
|
11035
11029
|
var __dirname2 = path.dirname(__filename2);
|
|
11036
11030
|
var isInDist = __dirname2.includes("/dist");
|
|
@@ -11055,8 +11049,6 @@ var EDITOR_URL = "https://agentsinc.sh/editor";
|
|
|
11055
11049
|
function editorConfigUrl(id) {
|
|
11056
11050
|
return `${EDITOR_URL}/?fromId=${encodeURIComponent(id)}`;
|
|
11057
11051
|
}
|
|
11058
|
-
var EDIT_PROJECT_SETUP_FLAG = "project-setup";
|
|
11059
|
-
var EDIT_PROJECT_SETUP_MARKETPLACE_FLAG = "project-setup-marketplace";
|
|
11060
11052
|
var SKILL_CATEGORIES_PATH = "config/skill-categories.ts";
|
|
11061
11053
|
var SKILL_RULES_PATH = "config/skill-rules.ts";
|
|
11062
11054
|
var STACKS_FILE_PATH = "config/stacks.ts";
|
|
@@ -11095,9 +11087,9 @@ var UI_SYMBOLS = {
|
|
|
11095
11087
|
SCROLL_DOWN: "\u25BC",
|
|
11096
11088
|
CHECK: CHECK_GLYPH,
|
|
11097
11089
|
CROSS: "\u2717",
|
|
11098
|
-
/** Removed/pending-removal diff marker (ASCII hyphen).
|
|
11090
|
+
/** Removed/pending-removal diff marker (ASCII hyphen). */
|
|
11099
11091
|
REMOVED: "-",
|
|
11100
|
-
/** Added/newly-selected diff marker (ASCII plus).
|
|
11092
|
+
/** Added/newly-selected diff marker (ASCII plus). */
|
|
11101
11093
|
ADDED: "+"
|
|
11102
11094
|
};
|
|
11103
11095
|
var GITHUB_SOURCE = {
|
|
@@ -11118,19 +11110,12 @@ var MAX_JSON_NESTING_DEPTH = 10;
|
|
|
11118
11110
|
var MAX_MARKETPLACE_PLUGINS = 1e4;
|
|
11119
11111
|
var SCROLL_VIEWPORT = {
|
|
11120
11112
|
/** Height of the "N more above" scroll indicator */
|
|
11121
|
-
SCROLL_INDICATOR_HEIGHT: 1
|
|
11122
|
-
/** Estimated lines per category name row (including top margin) */
|
|
11123
|
-
CATEGORY_NAME_LINES: 2,
|
|
11124
|
-
/** Margin between category sections (marginTop on CategorySection) */
|
|
11125
|
-
CATEGORY_MARGIN_LINES: 1,
|
|
11126
|
-
/** Minimum rows to show at least 1 category before enabling scroll */
|
|
11127
|
-
MIN_VIEWPORT_ROWS: 5
|
|
11113
|
+
SCROLL_INDICATOR_HEIGHT: 1
|
|
11128
11114
|
};
|
|
11129
11115
|
var MIN_TERMINAL_SIZE = {
|
|
11130
11116
|
COLS: 80,
|
|
11131
11117
|
ROWS: 20
|
|
11132
11118
|
};
|
|
11133
|
-
var LOGO_MIN_TERMINAL_ROWS = 26;
|
|
11134
11119
|
var DEFAULT_BRANDING = {
|
|
11135
11120
|
NAME: "Agents Inc."
|
|
11136
11121
|
};
|
|
@@ -11140,11 +11125,6 @@ var SOURCE_DISPLAY_NAMES = {
|
|
|
11140
11125
|
eject: "Eject",
|
|
11141
11126
|
"agents-inc": "Agents Inc"
|
|
11142
11127
|
};
|
|
11143
|
-
var INSTALL_MODES = ["eject", "plugin"];
|
|
11144
|
-
var INSTALL_MODE_CELL_LABELS = {
|
|
11145
|
-
eject: "Local",
|
|
11146
|
-
plugin: "Plugin"
|
|
11147
|
-
};
|
|
11148
11128
|
function formatSourceDisplayName(source) {
|
|
11149
11129
|
return SOURCE_DISPLAY_NAMES[source] ?? source;
|
|
11150
11130
|
}
|
|
@@ -11154,21 +11134,13 @@ var CLI_COLORS = {
|
|
|
11154
11134
|
SUCCESS: "#90EE90",
|
|
11155
11135
|
ERROR: "#DC343B",
|
|
11156
11136
|
WARNING: "#E6A817",
|
|
11157
|
-
INFO: "#3B82F6",
|
|
11158
11137
|
NEUTRAL: "#888888",
|
|
11159
|
-
FOCUS: "#87CEFA",
|
|
11160
|
-
UNFOCUSED: "#FFFFFF",
|
|
11161
11138
|
WHITE: "#FFFFFF",
|
|
11162
|
-
BLACK: "#000000",
|
|
11163
11139
|
DIM: "#666666",
|
|
11164
11140
|
GRAY_1: "#ddd",
|
|
11165
11141
|
LABEL_BG: "#383838",
|
|
11166
|
-
TOAST_BG: "#EEEEEE",
|
|
11167
|
-
TOAST_FG: "#000000",
|
|
11168
11142
|
HOVER_BG: "#333333"
|
|
11169
11143
|
};
|
|
11170
|
-
var DEFAULT_SCRATCH_DOMAINS = ["web", "api", "mobile"];
|
|
11171
|
-
var FALLBACK_DOMAIN = "web";
|
|
11172
11144
|
var ASCII_LOGO = ` \u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557
|
|
11173
11145
|
\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D \u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551\u255A\u2550\u2550\u2588\u2588\u2554\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D
|
|
11174
11146
|
\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2551
|
|
@@ -11184,12 +11156,11 @@ export {
|
|
|
11184
11156
|
SKILL_IDS,
|
|
11185
11157
|
AGENT_NAMES,
|
|
11186
11158
|
MATRIX_VERSION,
|
|
11187
|
-
DOMAIN_DESCRIPTIONS,
|
|
11188
11159
|
MODEL_NAMES,
|
|
11160
|
+
CODEX_MODEL_NAMES,
|
|
11189
11161
|
EFFORT_NAMES,
|
|
11190
11162
|
resolveLoadState,
|
|
11191
11163
|
resolveAssignment,
|
|
11192
|
-
createSelectionSemantics,
|
|
11193
11164
|
SEED_VERSION,
|
|
11194
11165
|
seedModelSchema,
|
|
11195
11166
|
seedExternalSkillSchema,
|
|
@@ -11199,9 +11170,11 @@ export {
|
|
|
11199
11170
|
installableSeedPayloadSchema,
|
|
11200
11171
|
seatCatalog,
|
|
11201
11172
|
seatedCatalog,
|
|
11173
|
+
seatDiagnostics,
|
|
11202
11174
|
diagnostics,
|
|
11203
11175
|
orderDomains,
|
|
11204
11176
|
bytewise,
|
|
11177
|
+
inAnEnglishList,
|
|
11205
11178
|
CLAUDE_DIR,
|
|
11206
11179
|
SOURCE_ROOT_DIR,
|
|
11207
11180
|
SOURCE_SRC_DIR,
|
|
@@ -11241,8 +11214,6 @@ export {
|
|
|
11241
11214
|
cacheRoot,
|
|
11242
11215
|
EDITOR_URL,
|
|
11243
11216
|
editorConfigUrl,
|
|
11244
|
-
EDIT_PROJECT_SETUP_FLAG,
|
|
11245
|
-
EDIT_PROJECT_SETUP_MARKETPLACE_FLAG,
|
|
11246
11217
|
SKILL_CATEGORIES_PATH,
|
|
11247
11218
|
SKILL_RULES_PATH,
|
|
11248
11219
|
STACKS_FILE_PATH,
|
|
@@ -11263,16 +11234,11 @@ export {
|
|
|
11263
11234
|
MAX_MARKETPLACE_PLUGINS,
|
|
11264
11235
|
SCROLL_VIEWPORT,
|
|
11265
11236
|
MIN_TERMINAL_SIZE,
|
|
11266
|
-
LOGO_MIN_TERMINAL_ROWS,
|
|
11267
11237
|
DEFAULT_BRANDING,
|
|
11268
11238
|
PUBLIC_CATALOGUE_PACKAGE,
|
|
11269
|
-
INSTALL_MODES,
|
|
11270
|
-
INSTALL_MODE_CELL_LABELS,
|
|
11271
11239
|
formatSourceDisplayName,
|
|
11272
11240
|
ALL_SKILLS_EJECTED_LABEL,
|
|
11273
11241
|
CLI_COLORS,
|
|
11274
|
-
DEFAULT_SCRATCH_DOMAINS,
|
|
11275
|
-
FALLBACK_DOMAIN,
|
|
11276
11242
|
ASCII_LOGO
|
|
11277
11243
|
};
|
|
11278
|
-
//# sourceMappingURL=chunk-
|
|
11244
|
+
//# sourceMappingURL=chunk-PJWGTNOX.js.map
|