@outsidestudio/agent-kit 0.2.3 → 0.3.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/README.md +11 -24
- package/package.json +1 -1
- package/profiles/pm.json +9 -1
- package/profiles/product-backend.json +10 -1
- package/profiles/shared.json +11 -1
- package/profiles/web-frontend.json +9 -1
- package/registry/security-audit.json +7 -0
package/README.md
CHANGED
|
@@ -14,6 +14,8 @@ bunx @outsidestudio/agent-kit add product-backend web-frontend
|
|
|
14
14
|
|
|
15
15
|
Installs **stack**: every run is additive, so installing one profile never removes another profile's entries — run them in any order, as often as you like. `agent-kit remove <target>` takes something out again.
|
|
16
16
|
|
|
17
|
+
**Auto-update.** bunx caches its copy of the kit. From **0.2.3** a cached copy checks npm's `latest` on startup and transparently reruns the new version with your arguments, so bare commands stay current (`AGENT_KIT_NO_UPDATE_CHECK=1` to opt out). Copies older than 0.2.3 cannot self-update: run `bunx @outsidestudio/agent-kit@latest update` once; the bare form updates itself from then on.
|
|
18
|
+
|
|
17
19
|
That command:
|
|
18
20
|
|
|
19
21
|
1. Detects which tools are installed (`opencode`, `omp`). Use `--tool` to choose.
|
|
@@ -56,11 +58,11 @@ src/adapters/ one adapter per tool (opencode.ts, omp.ts)
|
|
|
56
58
|
{
|
|
57
59
|
"description": "Product backend developers",
|
|
58
60
|
"extends": ["shared"],
|
|
59
|
-
"include": ["
|
|
61
|
+
"include": ["outside/product-backend-skills", "security-audit"]
|
|
60
62
|
}
|
|
61
63
|
```
|
|
62
64
|
|
|
63
|
-
`shared` is the base every department extends: the LLM provider, company skills, Superpowers, Context7 and Anthropic's document skills (docx, pdf, pptx, xlsx).
|
|
65
|
+
`shared` is the base every department extends: the LLM provider, company skills, Superpowers, Context7, context-mode and Anthropic's document skills (docx, pdf, pptx, xlsx).
|
|
64
66
|
|
|
65
67
|
### Registry item kinds
|
|
66
68
|
|
|
@@ -92,16 +94,16 @@ src/adapters/ one adapter per tool (opencode.ts, omp.ts)
|
|
|
92
94
|
"fallback": { "type": "git", "repo": "https://github.com/obra/superpowers.git", "path": "skills" } }
|
|
93
95
|
```
|
|
94
96
|
|
|
95
|
-
**`provider`**: an OpenAI-compatible model endpoint (our vast.ai models). The provider id in each tool is the registry id with `/` replaced by `-`, so the model id `nvidia/
|
|
97
|
+
**`provider`**: an OpenAI-compatible model endpoint (our vast.ai models). The provider id in each tool is the registry id with `/` replaced by `-`, so the model id `nvidia/Qwen3.8-Flash-Next-NVFP4` in `outside/llm` appears as `outside-llm/nvidia/Qwen3.8-Flash-Next-NVFP4`.
|
|
96
98
|
|
|
97
99
|
```json
|
|
98
100
|
{ "kind": "provider", "name": "Outside LLM",
|
|
99
101
|
"baseURL": "${OUTSIDE_LLM_BASE_URL}", "apiKey": "${OUTSIDE_LLM_API_KEY}",
|
|
100
|
-
"models": { "nvidia/
|
|
101
|
-
"name": "
|
|
102
|
+
"models": { "nvidia/Qwen3.8-Flash-Next-NVFP4": {
|
|
103
|
+
"name": "Qwen3.8 Flash Next (NVFP4)", "contextWindow": 131072, "maxTokens": 32768,
|
|
102
104
|
"reasoning": true, "input": ["text", "image"],
|
|
103
105
|
"thinking": { "mode": "effort", "efforts": ["low", "medium", "high"], "defaultLevel": "medium" } } },
|
|
104
|
-
"defaultModel": "nvidia/
|
|
106
|
+
"defaultModel": "nvidia/Qwen3.8-Flash-Next-NVFP4" }
|
|
105
107
|
```
|
|
106
108
|
|
|
107
109
|
Model metadata is endpoint-specific — the same model id behind a different gateway has different limits — so each provider item carries the numbers for the server it points at. The kit maps `contextWindow`/`maxTokens` to OMP's `contextWindow`/`maxTokens` and OpenCode's `limit.context`/`limit.output`, `input` to OpenCode `modalities.input`, and passes `thinking` through to OMP.
|
|
@@ -121,27 +123,12 @@ Model metadata is endpoint-specific — the same model id behind a different gat
|
|
|
121
123
|
|
|
122
124
|
**JSONC.** If `opencode.json` has comments, they are removed when the kit rewrites it (the backup keeps them).
|
|
123
125
|
|
|
126
|
+
**Caveats.** OMP also reads other tools' configs (`opencode.json`, `.claude`, …): same-named MCP servers dedupe (OMP's own `mcp.json` wins), but a skill installed in several places may appear twice. OpenCode caches git plugins — if an update doesn't show up, clear OpenCode's plugin cache and restart it.
|
|
127
|
+
|
|
124
128
|
## Adding things
|
|
125
129
|
|
|
126
130
|
- **Custom skill**: `agent-kit new skill product-backend/rate-limiting`, write the SKILL.md, open a PR. Everyone gets it on their next `update`.
|
|
127
131
|
- **New department**: add `profiles/<dept>.json` and `skills/<dept>/` (`new skill <dept>/<name>` creates the registry entry for you).
|
|
128
132
|
- **Third-party item**: add a `registry/<id>.json` (put your own under `registry/outside/`), then add the id to profiles.
|
|
129
133
|
- **New tool** (Codex, Cursor…): write `src/adapters/<tool>.ts` implementing `Adapter` and list it in `src/adapters/index.ts`.
|
|
130
|
-
|
|
131
|
-
## Publishing
|
|
132
|
-
|
|
133
|
-
Pick one:
|
|
134
|
-
|
|
135
|
-
- **Private npm registry** (GitHub Packages, Verdaccio): `npm publish`, then devs run `bunx @outsidestudio/agent-kit add <profile>`. Point the `@outsidestudio` scope at your registry in `~/.npmrc` or `bunfig.toml`.
|
|
136
|
-
- **Straight from GitHub**, no registry: `bunx github:madebyoutside/agent-kit <profile>`.
|
|
137
|
-
|
|
138
|
-
**Auto-update.** bunx reuses its cached copy of the kit; from **0.2.3** a cached copy checks npm's `latest` on startup and transparently reruns the new version with your arguments — bare commands stay current, no `@latest` needed. Set `AGENT_KIT_NO_UPDATE_CHECK=1` to opt out. Copies older than 0.2.3 cannot self-update: if a new command errors (e.g. `Unknown target "add"`), run `bunx @outsidestudio/agent-kit@latest update` once; from then on the bare form updates itself.
|
|
139
|
-
|
|
140
|
-
## Things to verify for your setup
|
|
141
|
-
|
|
142
|
-
- **Base URL.** Put a stable gateway (LiteLLM, Cloudflare Tunnel) in front of vast.ai so `OUTSIDE_LLM_BASE_URL` doesn't change when instances are recreated.
|
|
143
|
-
- **Model list.** Replace `qwen3-coder` in `registry/outside/llm.json` with the model ids your server actually serves (`curl $OUTSIDE_LLM_BASE_URL/models`).
|
|
144
|
-
- **Document skills.** Anthropic's docx/pdf/pptx/xlsx skills shell out to `python3` (and LibreOffice/pandoc for some conversions). `agent-kit doctor` warns when `python3` is missing; install the rest only if you use those flows.
|
|
145
|
-
- **OMP plugins.** Superpowers has no `omp` entry yet, so OMP gets its skills via the fallback. Add `"omp": { "plugin": "..." }` if `omp plugin install` supports it.
|
|
146
|
-
- **OpenCode plugin cache.** OpenCode caches git plugins. If an update doesn't show up, clear OpenCode's plugin cache and restart it.
|
|
147
|
-
- **Duplicates in OMP.** OMP also reads other tools' configs (`opencode.json`, `.claude`, …). Same-named MCP servers dedupe (OMP's own `mcp.json` wins), but a skill installed in several places may appear twice.
|
|
134
|
+
- **Release**: bump `version` in `package.json`, commit, `npm publish --access public`, push. `latest` propagates in ~1-2 min; machines on 0.2.3+ pick it up on their next bare `bunx` run.
|
package/package.json
CHANGED
package/profiles/pm.json
CHANGED
|
@@ -1 +1,10 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"description": "Product backend developers",
|
|
3
|
+
"extends": [
|
|
4
|
+
"shared"
|
|
5
|
+
],
|
|
6
|
+
"include": [
|
|
7
|
+
"outside/product-backend-skills",
|
|
8
|
+
"security-audit"
|
|
9
|
+
]
|
|
10
|
+
}
|
package/profiles/shared.json
CHANGED
|
@@ -1 +1,11 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"description": "Base setup every profile extends",
|
|
3
|
+
"include": [
|
|
4
|
+
"outside/llm",
|
|
5
|
+
"outside/shared-skills",
|
|
6
|
+
"superpowers",
|
|
7
|
+
"context7",
|
|
8
|
+
"context-mode",
|
|
9
|
+
"anthropic/document-skills"
|
|
10
|
+
]
|
|
11
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"kind": "skills",
|
|
3
|
+
"description": "Cloudflare's security-audit skill: security guidance, focused reviews and full multi-agent codebase audits",
|
|
4
|
+
"source": { "type": "git", "repo": "https://github.com/cloudflare/security-audit-skill.git", "path": "skills" },
|
|
5
|
+
"only": ["security-audit"],
|
|
6
|
+
"requires": ["node"]
|
|
7
|
+
}
|