@alavida/agentpack 0.1.2 → 0.1.3
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/README.md +11 -1
- package/bin/intent.js +20 -0
- package/package.json +11 -5
- package/skills/agentpack-cli/SKILL.md +4 -1
- package/skills/authoring-skillgraphs-from-knowledge/SKILL.md +148 -0
- package/skills/authoring-skillgraphs-from-knowledge/references/authored-metadata.md +6 -0
- package/skills/developing-and-testing-skills/SKILL.md +109 -0
- package/skills/developing-and-testing-skills/references/local-workbench.md +7 -0
- package/skills/getting-started-skillgraphs/SKILL.md +115 -0
- package/skills/getting-started-skillgraphs/references/command-routing.md +7 -0
- package/skills/identifying-skill-opportunities/SKILL.md +119 -0
- package/skills/identifying-skill-opportunities/references/capability-boundaries.md +6 -0
- package/skills/maintaining-skillgraph-freshness/SKILL.md +110 -0
- package/skills/repairing-broken-skill-or-plugin-state/SKILL.md +112 -0
- package/skills/repairing-broken-skill-or-plugin-state/references/diagnostic-flows.md +6 -0
- package/skills/shipping-production-plugins-and-packages/SKILL.md +123 -0
- package/skills/shipping-production-plugins-and-packages/references/plugin-delivery.md +6 -0
- package/src/application/skills/build-skill-workbench-model.js +194 -0
- package/src/application/skills/run-skill-workbench-action.js +23 -0
- package/src/application/skills/start-skill-dev-workbench.js +192 -0
- package/src/cli.js +1 -1
- package/src/commands/skills.js +7 -1
- package/src/dashboard/App.jsx +343 -0
- package/src/dashboard/components/Breadcrumbs.jsx +45 -0
- package/src/dashboard/components/ControlStrip.jsx +153 -0
- package/src/dashboard/components/InspectorPanel.jsx +203 -0
- package/src/dashboard/components/SkillGraph.jsx +567 -0
- package/src/dashboard/components/Tooltip.jsx +111 -0
- package/src/dashboard/dist/dashboard.js +26692 -0
- package/src/dashboard/index.html +81 -0
- package/src/dashboard/lib/api.js +19 -0
- package/src/dashboard/lib/router.js +15 -0
- package/src/dashboard/main.jsx +4 -0
- package/src/domain/plugins/load-plugin-definition.js +163 -0
- package/src/domain/plugins/plugin-diagnostic-error.js +18 -0
- package/src/domain/plugins/plugin-requirements.js +15 -0
- package/src/domain/skills/skill-graph.js +1 -0
- package/src/infrastructure/runtime/open-browser.js +20 -0
- package/src/infrastructure/runtime/skill-dev-workbench-server.js +96 -0
- package/src/infrastructure/runtime/watch-skill-workbench.js +68 -0
- package/src/lib/plugins.js +19 -28
- package/src/lib/skills.js +60 -12
- package/src/utils/errors.js +33 -1
package/README.md
CHANGED
|
@@ -88,7 +88,9 @@ agentpack skills validate domains/operations/skills/agonda-prioritisation
|
|
|
88
88
|
agentpack skills dev domains/operations/skills/agonda-prioritisation
|
|
89
89
|
```
|
|
90
90
|
|
|
91
|
-
Use `skills dev` when you want the skill linked into `.claude/skills/` and `.agents/skills/` for local runtime testing.
|
|
91
|
+
Use `skills dev` when you want the skill linked into `.claude/skills/` and `.agents/skills/` for local runtime testing. It now also starts a localhost development workbench by default for one selected skill, showing immediate provenance sources, direct required skills, lifecycle state, and workbench actions such as validation and stale checks.
|
|
92
|
+
|
|
93
|
+
Pass `--no-dashboard` if you want the original CLI-only linking workflow without the local dashboard.
|
|
92
94
|
|
|
93
95
|
If your agent session was already running, start a fresh session after linking so the runtime can pick up the newly materialized skill.
|
|
94
96
|
|
|
@@ -107,6 +109,8 @@ agentpack plugin validate path/to/plugin
|
|
|
107
109
|
agentpack plugin build path/to/plugin
|
|
108
110
|
```
|
|
109
111
|
|
|
112
|
+
`plugin inspect` and `plugin validate` now emit actionable structured diagnostics when a plugin target is missing required files such as `package.json` or `.claude-plugin/plugin.json`.
|
|
113
|
+
|
|
110
114
|
For watch mode during development:
|
|
111
115
|
|
|
112
116
|
```bash
|
|
@@ -219,6 +223,12 @@ Implemented today:
|
|
|
219
223
|
|
|
220
224
|
Hosted docs: https://docs.alavida.ai
|
|
221
225
|
|
|
226
|
+
For a repo-local demo and manual testing target, initialize submodules and use [`sandbox/acme-demo/`](./sandbox/acme-demo).
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
git submodule update --init --recursive
|
|
230
|
+
```
|
|
231
|
+
|
|
222
232
|
Docs source: [`docs/`](./docs)
|
|
223
233
|
|
|
224
234
|
For local docs preview as a contributor:
|
package/bin/intent.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// Auto-generated by @tanstack/intent setup
|
|
3
|
+
// Exposes the intent end-user CLI for consumers of this library.
|
|
4
|
+
// Commit this file, then add to your package.json:
|
|
5
|
+
// "bin": { "intent": "./bin/intent.js" }
|
|
6
|
+
try {
|
|
7
|
+
await import('@tanstack/intent/intent-library')
|
|
8
|
+
} catch (e) {
|
|
9
|
+
if (e?.code === 'ERR_MODULE_NOT_FOUND' || e?.code === 'MODULE_NOT_FOUND') {
|
|
10
|
+
console.error('@tanstack/intent is not installed.')
|
|
11
|
+
console.error('')
|
|
12
|
+
console.error('Install it as a dev dependency:')
|
|
13
|
+
console.error(' npm add -D @tanstack/intent')
|
|
14
|
+
console.error('')
|
|
15
|
+
console.error('Or run directly:')
|
|
16
|
+
console.error(' npx @tanstack/intent@latest list')
|
|
17
|
+
process.exit(1)
|
|
18
|
+
}
|
|
19
|
+
throw e
|
|
20
|
+
}
|
package/package.json
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alavida/agentpack",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Package-backed skills lifecycle CLI for agent skills and plugins",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
|
-
"agentpack": "bin/agentpack.js"
|
|
7
|
+
"agentpack": "bin/agentpack.js",
|
|
8
|
+
"intent": "./bin/intent.js"
|
|
8
9
|
},
|
|
9
10
|
"files": [
|
|
10
11
|
"bin",
|
|
@@ -18,7 +19,8 @@
|
|
|
18
19
|
"validate:live": "node scripts/live-validation.mjs",
|
|
19
20
|
"smoke:monorepo": "node scripts/smoke-monorepo.mjs",
|
|
20
21
|
"docs:dev": "cd docs && mint dev",
|
|
21
|
-
"intent:validate": "npx @tanstack/intent validate"
|
|
22
|
+
"intent:validate": "npx @tanstack/intent validate",
|
|
23
|
+
"build:dashboard": "node scripts/build-dashboard.mjs"
|
|
22
24
|
},
|
|
23
25
|
"keywords": [
|
|
24
26
|
"agentpack",
|
|
@@ -43,10 +45,14 @@
|
|
|
43
45
|
"docs": "https://github.com/alavida-ai/agentpack/tree/main/docs"
|
|
44
46
|
},
|
|
45
47
|
"dependencies": {
|
|
46
|
-
"commander": "^13.0.0"
|
|
48
|
+
"commander": "^13.0.0",
|
|
49
|
+
"d3": "^7.9.0",
|
|
50
|
+
"react": "^19.1.1",
|
|
51
|
+
"react-dom": "^19.1.1"
|
|
47
52
|
},
|
|
48
53
|
"devDependencies": {
|
|
49
|
-
"@tanstack/intent": "^0.0.14"
|
|
54
|
+
"@tanstack/intent": "^0.0.14",
|
|
55
|
+
"esbuild": "^0.25.10"
|
|
50
56
|
},
|
|
51
57
|
"engines": {
|
|
52
58
|
"node": ">=20.0.0"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: agentpack-cli
|
|
3
3
|
description: Use the agentpack CLI correctly when treating knowledge as a package. Apply the authored skill lifecycle, plugin lifecycle, source-backed validation, install flow, and bundled plugin artifact flow without mixing those stages together.
|
|
4
|
-
library_version: 0.1.
|
|
4
|
+
library_version: 0.1.2
|
|
5
5
|
sources:
|
|
6
6
|
- README.md
|
|
7
7
|
- docs/introduction.mdx
|
|
@@ -56,6 +56,7 @@ Default flow:
|
|
|
56
56
|
- `agentpack skills inspect <skill-dir>`
|
|
57
57
|
- `agentpack skills validate <skill-dir>`
|
|
58
58
|
- `agentpack skills dev <skill-dir>` if local runtime testing is needed
|
|
59
|
+
- `agentpack skills dev --no-dashboard <skill-dir>` if the user wants to skip the local workbench
|
|
59
60
|
|
|
60
61
|
Key idea:
|
|
61
62
|
|
|
@@ -74,6 +75,7 @@ Persistence rule:
|
|
|
74
75
|
Runtime notes:
|
|
75
76
|
|
|
76
77
|
- after `skills dev` writes to `.claude/skills/` or `.agents/skills/`, start a fresh agent session if the current one was already running
|
|
78
|
+
- `skills dev` starts a localhost workbench by default for one selected skill, with provenance edges, direct required skills, and actions like validate or stale checks
|
|
77
79
|
- do not reload `metadata.sources` manually once the dev-linked skill exists; trust the compiled `SKILL.md` artifact unless you are explicitly updating the skill
|
|
78
80
|
- invoke the resulting skill through the runtime's skill mechanism, not by opening the file and reading it as plain text
|
|
79
81
|
|
|
@@ -106,6 +108,7 @@ Key idea:
|
|
|
106
108
|
- plugin-local `requires` remain the dependency truth
|
|
107
109
|
- packaged skills are vendored into the built artifact
|
|
108
110
|
- the plugin artifact is the thing consumers run
|
|
111
|
+
- `plugin inspect` and `plugin validate` can return structured diagnostics with `path`, `nextSteps`, and example fixes when plugin definition files are missing or malformed
|
|
109
112
|
|
|
110
113
|
Read [plugin-lifecycle.md](references/plugin-lifecycle.md) when the user needs the full artifact flow.
|
|
111
114
|
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: authoring-skillgraphs-from-knowledge
|
|
3
|
+
description: Use when authoring packaged skills from source knowledge with valid SKILL.md metadata, package.json release fields, provenance sources, and requires edges in agentpack.
|
|
4
|
+
type: core
|
|
5
|
+
library: agentpack
|
|
6
|
+
library_version: "0.1.2"
|
|
7
|
+
sources:
|
|
8
|
+
- "alavida-ai/agentpack:docs/commands.mdx"
|
|
9
|
+
- "alavida-ai/agentpack:docs/architecture.mdx"
|
|
10
|
+
- "alavida-ai/agentpack:skills/agentpack-cli/SKILL.md"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Agentpack - Authoring Skillgraphs From Knowledge
|
|
14
|
+
|
|
15
|
+
## Setup
|
|
16
|
+
|
|
17
|
+
```yaml
|
|
18
|
+
---
|
|
19
|
+
name: value-copywriting
|
|
20
|
+
description: Messaging and copywriting guidance.
|
|
21
|
+
metadata:
|
|
22
|
+
sources:
|
|
23
|
+
- domains/value/knowledge/selling-points.md
|
|
24
|
+
requires:
|
|
25
|
+
- @alavida-ai/methodology-gary-provost
|
|
26
|
+
---
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
```json
|
|
30
|
+
{
|
|
31
|
+
"name": "@alavida-ai/value-copywriting",
|
|
32
|
+
"version": "1.0.0",
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "git+https://github.com/alavida-ai/knowledge-base.git"
|
|
36
|
+
},
|
|
37
|
+
"publishConfig": {
|
|
38
|
+
"registry": "https://npm.pkg.github.com"
|
|
39
|
+
},
|
|
40
|
+
"files": ["SKILL.md"],
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@alavida-ai/methodology-gary-provost": "^1.0.0"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Core Patterns
|
|
48
|
+
|
|
49
|
+
### Author `requires` in `SKILL.md`
|
|
50
|
+
|
|
51
|
+
```yaml
|
|
52
|
+
requires:
|
|
53
|
+
- @alavida-ai/methodology-gary-provost
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Validate to sync and record provenance
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
agentpack skills validate domains/value/skills/copywriting
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Inspect by path or package name
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
agentpack skills inspect domains/value/skills/copywriting
|
|
66
|
+
agentpack skills inspect @alavida-ai/value-copywriting
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Common Mistakes
|
|
70
|
+
|
|
71
|
+
### CRITICAL Editing package dependencies instead of requires
|
|
72
|
+
|
|
73
|
+
Wrong:
|
|
74
|
+
|
|
75
|
+
```json
|
|
76
|
+
{
|
|
77
|
+
"dependencies": {
|
|
78
|
+
"@alavida-ai/methodology-gary-provost": "^1.0.0"
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Correct:
|
|
84
|
+
|
|
85
|
+
```yaml
|
|
86
|
+
requires:
|
|
87
|
+
- @alavida-ai/methodology-gary-provost
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
`requires` is the authored dependency truth; `package.json.dependencies` is the compiled mirror.
|
|
91
|
+
|
|
92
|
+
Source: skills/agentpack-cli/SKILL.md
|
|
93
|
+
|
|
94
|
+
### HIGH Shipping a skill package without SKILL.md in files
|
|
95
|
+
|
|
96
|
+
Wrong:
|
|
97
|
+
|
|
98
|
+
```json
|
|
99
|
+
{
|
|
100
|
+
"files": ["README.md"]
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Correct:
|
|
105
|
+
|
|
106
|
+
```json
|
|
107
|
+
{
|
|
108
|
+
"files": ["SKILL.md"]
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
A package that excludes `SKILL.md` is structurally invalid even if the authored source exists locally.
|
|
113
|
+
|
|
114
|
+
Source: docs/commands.mdx
|
|
115
|
+
|
|
116
|
+
### HIGH Using missing or invalid package metadata
|
|
117
|
+
|
|
118
|
+
Wrong:
|
|
119
|
+
|
|
120
|
+
```json
|
|
121
|
+
{
|
|
122
|
+
"name": "@alavida-ai/value-copywriting"
|
|
123
|
+
}
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
Correct:
|
|
127
|
+
|
|
128
|
+
```json
|
|
129
|
+
{
|
|
130
|
+
"name": "@alavida-ai/value-copywriting",
|
|
131
|
+
"version": "1.0.0",
|
|
132
|
+
"repository": {
|
|
133
|
+
"type": "git",
|
|
134
|
+
"url": "git+https://github.com/alavida-ai/knowledge-base.git"
|
|
135
|
+
},
|
|
136
|
+
"publishConfig": {
|
|
137
|
+
"registry": "https://npm.pkg.github.com"
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Release-readiness checks enforce package identity and distribution metadata during `skills validate`.
|
|
143
|
+
|
|
144
|
+
Source: docs/commands.mdx
|
|
145
|
+
|
|
146
|
+
## References
|
|
147
|
+
|
|
148
|
+
- [Authored metadata](references/authored-metadata.md)
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Authored Metadata
|
|
2
|
+
|
|
3
|
+
- `SKILL.md` owns `name`, `description`, `metadata.sources`, and `requires`
|
|
4
|
+
- `package.json` owns distribution metadata such as package name, version, publish config, and repository
|
|
5
|
+
- `skills validate` syncs managed dependencies from `requires` and refreshes `.agentpack/build-state.json`
|
|
6
|
+
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: developing-and-testing-skills
|
|
3
|
+
description: Use when iterating locally on a packaged skill with agentpack skills dev, the localhost workbench, repo-local materialization, and runtime testing feedback loops.
|
|
4
|
+
type: core
|
|
5
|
+
library: agentpack
|
|
6
|
+
library_version: "0.1.2"
|
|
7
|
+
sources:
|
|
8
|
+
- "alavida-ai/agentpack:docs/commands.mdx"
|
|
9
|
+
- "alavida-ai/agentpack:docs/introduction.mdx"
|
|
10
|
+
- "alavida-ai/agentpack:README.md"
|
|
11
|
+
requires:
|
|
12
|
+
- authoring-skillgraphs-from-knowledge
|
|
13
|
+
- maintaining-skillgraph-freshness
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# Agentpack - Developing And Testing Skills
|
|
17
|
+
|
|
18
|
+
## Setup
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
cd knowledge-base
|
|
22
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Core Patterns
|
|
26
|
+
|
|
27
|
+
### Start local dev with the workbench
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
This links the selected skill into `.claude/skills/` and `.agents/skills/` and starts a localhost workbench by default.
|
|
34
|
+
|
|
35
|
+
### Use CLI-only mode when you explicitly do not want the dashboard
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
agentpack skills dev --no-dashboard domains/value/skills/copywriting
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Stop and clean up local links
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
agentpack skills unlink value-copywriting
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Common Mistakes
|
|
48
|
+
|
|
49
|
+
### HIGH Expecting the current agent session to pick up new links
|
|
50
|
+
|
|
51
|
+
Wrong:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Correct:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
61
|
+
# start a fresh agent session if one was already running
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Already-running agent sessions may not rescan newly materialized skills.
|
|
65
|
+
|
|
66
|
+
Source: README.md
|
|
67
|
+
|
|
68
|
+
### MEDIUM Assuming unresolved requires block local dev links
|
|
69
|
+
|
|
70
|
+
Wrong:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
74
|
+
# ignore the unresolved warning because linking succeeded
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Correct:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
81
|
+
agentpack skills dependencies @alavida-ai/value-copywriting
|
|
82
|
+
agentpack skills missing
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
`skills dev` can still link the selected skill while warning about unresolved packaged requirements.
|
|
86
|
+
|
|
87
|
+
Source: docs/commands.mdx
|
|
88
|
+
|
|
89
|
+
### MEDIUM Using no-dashboard mode and expecting workbench actions
|
|
90
|
+
|
|
91
|
+
Wrong:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
agentpack skills dev --no-dashboard domains/value/skills/copywriting
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Correct:
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
`--no-dashboard` suppresses the localhost workbench entirely.
|
|
104
|
+
|
|
105
|
+
Source: docs/introduction.mdx
|
|
106
|
+
|
|
107
|
+
## References
|
|
108
|
+
|
|
109
|
+
- [Local workbench](references/local-workbench.md)
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Local Workbench
|
|
2
|
+
|
|
3
|
+
- Default `skills dev` starts a localhost workbench for one selected skill
|
|
4
|
+
- The workbench shows provenance sources, direct required skills, lifecycle state, and actions such as validate or stale checks
|
|
5
|
+
- `--no-dashboard` keeps the old CLI-only flow
|
|
6
|
+
- Editing `SKILL.md`, `package.json`, or tracked source files refreshes the model during the dev session
|
|
7
|
+
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: getting-started-skillgraphs
|
|
3
|
+
description: Use when starting from an empty repo or empty skillgraph and needing the first correct authoring loop, lifecycle framing, repo-root routing, and inspect/validate/dev command flow in agentpack.
|
|
4
|
+
type: lifecycle
|
|
5
|
+
library: agentpack
|
|
6
|
+
library_version: "0.1.2"
|
|
7
|
+
sources:
|
|
8
|
+
- "alavida-ai/agentpack:docs/introduction.mdx"
|
|
9
|
+
- "alavida-ai/agentpack:docs/commands.mdx"
|
|
10
|
+
- "alavida-ai/agentpack:README.md"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Agentpack - Getting Started Skillgraphs
|
|
14
|
+
|
|
15
|
+
## Setup
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm install -g @alavida/agentpack
|
|
19
|
+
cd knowledge-base
|
|
20
|
+
agentpack skills inspect domains/value/skills/copywriting
|
|
21
|
+
agentpack skills validate domains/value/skills/copywriting
|
|
22
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Core Patterns
|
|
26
|
+
|
|
27
|
+
### Start in the authoring repo
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
cd knowledge-base
|
|
31
|
+
agentpack skills validate domains/value/skills/copywriting
|
|
32
|
+
agentpack skills stale
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Run source-backed commands from the repo that owns the files in `metadata.sources`.
|
|
36
|
+
|
|
37
|
+
### Use the authored workflow first
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
agentpack skills inspect domains/value/skills/copywriting
|
|
41
|
+
agentpack skills validate domains/value/skills/copywriting
|
|
42
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Switch to consumer install only after publishing
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
cd consumer-repo
|
|
49
|
+
agentpack skills install @alavida-ai/value-copywriting
|
|
50
|
+
agentpack skills env
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Common Mistakes
|
|
54
|
+
|
|
55
|
+
### CRITICAL Wrong repo root for source-backed commands
|
|
56
|
+
|
|
57
|
+
Wrong:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
cd tooling/agentpack
|
|
61
|
+
agentpack skills validate ../knowledge-base/domains/value/skills/copywriting
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Correct:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
cd knowledge-base
|
|
68
|
+
agentpack skills validate domains/value/skills/copywriting
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
`metadata.sources` resolve relative to the current repo root, so validating from the wrong repo breaks provenance checks.
|
|
72
|
+
|
|
73
|
+
Source: docs/introduction.mdx
|
|
74
|
+
|
|
75
|
+
### HIGH Starting with install instead of authoring validation
|
|
76
|
+
|
|
77
|
+
Wrong:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
agentpack skills install @alavida-ai/value-copywriting
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Correct:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
agentpack skills inspect domains/value/skills/copywriting
|
|
87
|
+
agentpack skills validate domains/value/skills/copywriting
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
`install` is the consumer lifecycle; authored skills need inspect and validate first.
|
|
91
|
+
|
|
92
|
+
Source: skills/agentpack-cli/SKILL.md
|
|
93
|
+
|
|
94
|
+
### MEDIUM Treating the dashboard as the authoring surface
|
|
95
|
+
|
|
96
|
+
Wrong:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Correct:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
edit domains/value/skills/copywriting/SKILL.md
|
|
106
|
+
agentpack skills dev domains/value/skills/copywriting
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
The localhost workbench is for visibility during `skills dev`, not the source of truth for authored behavior.
|
|
110
|
+
|
|
111
|
+
Source: docs/commands.mdx
|
|
112
|
+
|
|
113
|
+
## References
|
|
114
|
+
|
|
115
|
+
- [Command routing](references/command-routing.md)
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Command Routing
|
|
2
|
+
|
|
3
|
+
- Authoring repo: `skills inspect`, `skills validate`, `skills dev`, `skills stale`
|
|
4
|
+
- Consumer repo: `skills install`, `skills env`, `skills status`, `skills missing`
|
|
5
|
+
- Plugin shell: `plugin inspect`, `plugin validate`, `plugin build`, `plugin dev`
|
|
6
|
+
- If sources live under `domains/.../knowledge/*.md`, run authored commands from that repo root
|
|
7
|
+
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: identifying-skill-opportunities
|
|
3
|
+
description: Use when deciding what raw knowledge should become a packaged skill, a reusable capability boundary, a requires edge, or a plugin-local wrapper in an agentpack skillgraph.
|
|
4
|
+
type: core
|
|
5
|
+
library: agentpack
|
|
6
|
+
library_version: "0.1.2"
|
|
7
|
+
sources:
|
|
8
|
+
- "alavida-ai/agentpack:docs/architecture.mdx"
|
|
9
|
+
- "alavida-ai/agentpack:docs/overview.mdx"
|
|
10
|
+
- "alavida-ai/agentpack:skills/agentpack-cli/SKILL.md"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Agentpack - Identifying Skill Opportunities
|
|
14
|
+
|
|
15
|
+
## Setup
|
|
16
|
+
|
|
17
|
+
```md
|
|
18
|
+
Source knowledge:
|
|
19
|
+
- domains/design/knowledge/brand-guidelines.md
|
|
20
|
+
- domains/frontend/knowledge/component-heuristics.md
|
|
21
|
+
|
|
22
|
+
Reusable skills:
|
|
23
|
+
- domains/design/skills/brand-guidelines
|
|
24
|
+
- domains/frontend/skills/frontend-skill
|
|
25
|
+
|
|
26
|
+
Composed task skill:
|
|
27
|
+
- domains/design/skills/agonda-brand-frontend
|
|
28
|
+
requires:
|
|
29
|
+
- @scope/brand-guidelines
|
|
30
|
+
- @scope/frontend-skill
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Core Patterns
|
|
34
|
+
|
|
35
|
+
### Split by reusable capability
|
|
36
|
+
|
|
37
|
+
If a knowledge area should be reused compositionally in work, give it its own packaged skill.
|
|
38
|
+
|
|
39
|
+
### Compose task-specific skills with `requires`
|
|
40
|
+
|
|
41
|
+
Use a task skill when the work needs several reusable capabilities together.
|
|
42
|
+
|
|
43
|
+
### Keep plugin-local skills as delivery wrappers
|
|
44
|
+
|
|
45
|
+
Use plugin-local skills to expose packaged capabilities inside a runtime shell, not to hide the capability graph.
|
|
46
|
+
|
|
47
|
+
## Common Mistakes
|
|
48
|
+
|
|
49
|
+
### HIGH Copying knowledge into one giant skill
|
|
50
|
+
|
|
51
|
+
Wrong:
|
|
52
|
+
|
|
53
|
+
```md
|
|
54
|
+
One SKILL.md contains branding, frontend heuristics, research notes, and delivery instructions.
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Correct:
|
|
58
|
+
|
|
59
|
+
```md
|
|
60
|
+
Create packaged skills for reusable capabilities, then compose them with requires.
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Flattening multiple capabilities into one skill destroys explicit dependency edges and makes maintenance coarse.
|
|
64
|
+
|
|
65
|
+
Source: maintainer interview
|
|
66
|
+
|
|
67
|
+
### CRITICAL Using plugin boundaries as the dependency model
|
|
68
|
+
|
|
69
|
+
Wrong:
|
|
70
|
+
|
|
71
|
+
```text
|
|
72
|
+
plugins/website-dev/skills/copywriting/SKILL.md
|
|
73
|
+
plugins/website-dev/skills/research/SKILL.md
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Correct:
|
|
77
|
+
|
|
78
|
+
```text
|
|
79
|
+
domains/brand/skills/copywriting/SKILL.md
|
|
80
|
+
domains/research/skills/interview-research/SKILL.md
|
|
81
|
+
plugins/website-dev/skills/copywriting/SKILL.md # requires packaged skills
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Plugins are a delivery surface, not the architectural place to hide reusable capability boundaries.
|
|
85
|
+
|
|
86
|
+
Source: docs/architecture.mdx
|
|
87
|
+
|
|
88
|
+
### CRITICAL Omitting provenance sources for knowledge-backed skills
|
|
89
|
+
|
|
90
|
+
Wrong:
|
|
91
|
+
|
|
92
|
+
```yaml
|
|
93
|
+
---
|
|
94
|
+
name: value-copywriting
|
|
95
|
+
description: Copy.
|
|
96
|
+
requires: []
|
|
97
|
+
---
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
Correct:
|
|
101
|
+
|
|
102
|
+
```yaml
|
|
103
|
+
---
|
|
104
|
+
name: value-copywriting
|
|
105
|
+
description: Copy.
|
|
106
|
+
metadata:
|
|
107
|
+
sources:
|
|
108
|
+
- domains/value/knowledge/tone-of-voice.md
|
|
109
|
+
requires: []
|
|
110
|
+
---
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Without `metadata.sources`, the skillgraph cannot explain stale state against source truth.
|
|
114
|
+
|
|
115
|
+
Source: docs/architecture.mdx
|
|
116
|
+
|
|
117
|
+
## References
|
|
118
|
+
|
|
119
|
+
- [Capability boundaries](references/capability-boundaries.md)
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Capability Boundaries
|
|
2
|
+
|
|
3
|
+
- Split when the knowledge should be reused as an independent capability in real work
|
|
4
|
+
- Compose task-specific skills with `requires` instead of flattening them
|
|
5
|
+
- Keep plugins for delivery concerns such as hooks, MCP tools, and grouped shipment of several skills
|
|
6
|
+
|