@anthropologies/claudestory 0.1.50 → 0.1.52
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/cli.js +3 -3
- package/dist/mcp.js +2 -2
- package/package.json +1 -1
- package/src/skill/SKILL.md +2 -3
- package/src/skill/setup-flow.md +68 -1
package/dist/cli.js
CHANGED
|
@@ -8358,7 +8358,7 @@ function getInstalledVersion() {
|
|
|
8358
8358
|
}
|
|
8359
8359
|
}
|
|
8360
8360
|
function getRunningVersion() {
|
|
8361
|
-
return "0.1.
|
|
8361
|
+
return "0.1.52";
|
|
8362
8362
|
}
|
|
8363
8363
|
var init_version_check = __esm({
|
|
8364
8364
|
"src/autonomous/version-check.ts"() {
|
|
@@ -10923,7 +10923,7 @@ var init_mcp = __esm({
|
|
|
10923
10923
|
init_init();
|
|
10924
10924
|
ENV_VAR2 = "CLAUDESTORY_PROJECT_ROOT";
|
|
10925
10925
|
CONFIG_PATH2 = ".story/config.json";
|
|
10926
|
-
version = "0.1.
|
|
10926
|
+
version = "0.1.52";
|
|
10927
10927
|
main().catch((err) => {
|
|
10928
10928
|
process.stderr.write(`Fatal: ${err instanceof Error ? err.message : String(err)}
|
|
10929
10929
|
`);
|
|
@@ -14354,7 +14354,7 @@ async function runCli() {
|
|
|
14354
14354
|
registerSessionCommand: registerSessionCommand2,
|
|
14355
14355
|
registerRepairCommand: registerRepairCommand2
|
|
14356
14356
|
} = await Promise.resolve().then(() => (init_register(), register_exports));
|
|
14357
|
-
const version2 = "0.1.
|
|
14357
|
+
const version2 = "0.1.52";
|
|
14358
14358
|
class HandledError extends Error {
|
|
14359
14359
|
constructor() {
|
|
14360
14360
|
super("HANDLED_ERROR");
|
package/dist/mcp.js
CHANGED
|
@@ -7816,7 +7816,7 @@ function getInstalledVersion() {
|
|
|
7816
7816
|
}
|
|
7817
7817
|
}
|
|
7818
7818
|
function getRunningVersion() {
|
|
7819
|
-
return "0.1.
|
|
7819
|
+
return "0.1.52";
|
|
7820
7820
|
}
|
|
7821
7821
|
|
|
7822
7822
|
// src/autonomous/guide.ts
|
|
@@ -10055,7 +10055,7 @@ async function ensureGitignoreEntries(gitignorePath, entries) {
|
|
|
10055
10055
|
// src/mcp/index.ts
|
|
10056
10056
|
var ENV_VAR2 = "CLAUDESTORY_PROJECT_ROOT";
|
|
10057
10057
|
var CONFIG_PATH2 = ".story/config.json";
|
|
10058
|
-
var version = "0.1.
|
|
10058
|
+
var version = "0.1.52";
|
|
10059
10059
|
function tryDiscoverRoot() {
|
|
10060
10060
|
const envRoot = process.env[ENV_VAR2];
|
|
10061
10061
|
if (envRoot) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anthropologies/claudestory",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.52",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"description": "Cross-session context persistence for AI coding projects. Tracks tickets, issues, roadmap, and handovers so every session builds on the last.",
|
|
6
6
|
"keywords": [
|
package/src/skill/SKILL.md
CHANGED
|
@@ -129,7 +129,6 @@ Example: "Rules: integer cents for money, billing engine is pure logic, TDD for
|
|
|
129
129
|
|
|
130
130
|
```
|
|
131
131
|
Tip: You can also use these modes anytime:
|
|
132
|
-
/story auto I work through tickets autonomously -- plan, review, build, commit, loop
|
|
133
132
|
/story guided T-XXX One ticket end-to-end with planning and code review
|
|
134
133
|
/story review T-XXX Review code you already wrote
|
|
135
134
|
```
|
|
@@ -144,10 +143,10 @@ End with `AskUserQuestion`:
|
|
|
144
143
|
- options:
|
|
145
144
|
- "Work on [first recommended ticket ID + title] (Recommended)" -- the top ticket from the Ready table
|
|
146
145
|
- "Something else" -- I'll ask what you have in mind
|
|
147
|
-
- "Autonomous mode" -- I'll
|
|
146
|
+
- "Autonomous mode" -- I'll pick tickets, plan, review, build, commit, and loop until done
|
|
148
147
|
- (Other always available for free-text input)
|
|
149
148
|
|
|
150
|
-
|
|
149
|
+
Autonomous mode is last -- most users want to collaborate, not hand off control.
|
|
151
150
|
|
|
152
151
|
## Session Lifecycle
|
|
153
152
|
|
package/src/skill/setup-flow.md
CHANGED
|
@@ -327,6 +327,26 @@ AI gates generate tickets the current flow would miss:
|
|
|
327
327
|
- Document ownership model (if RAG + auth)
|
|
328
328
|
- Audit logging + disclaimers (if sensitive domain)
|
|
329
329
|
|
|
330
|
+
**--- Quality checks (skip for static sites, content-only, simple portfolios) ---**
|
|
331
|
+
|
|
332
|
+
**Step 4g:** Quality checks for autonomous mode. Use `AskUserQuestion`:
|
|
333
|
+
- question: "How should I handle quality checks when working on your tickets?"
|
|
334
|
+
- header: "Quality"
|
|
335
|
+
- options:
|
|
336
|
+
- "Full pipeline (Recommended)" -- I'll write tests first (TDD), run them after building, smoke test your endpoints, and validate the build
|
|
337
|
+
- "Tests only" -- I'll run tests after building, skip endpoint and build checks
|
|
338
|
+
- "Minimal" -- just build and commit, no automated checks
|
|
339
|
+
- (Other always available for custom configuration)
|
|
340
|
+
|
|
341
|
+
If domain complexity includes workflows/approvals or sensitive domain was selected, bias toward "Full pipeline" and explain why: "Recommended because your project has [business rules / sensitive domain] -- TDD catches bugs before they ship."
|
|
342
|
+
|
|
343
|
+
Quality level maps to autonomous recipe stages (configured in step 1e):
|
|
344
|
+
- **Full pipeline:** WRITE_TESTS + TEST + VERIFY + BUILD (all enabled)
|
|
345
|
+
- **Tests only:** TEST (enabled), others disabled
|
|
346
|
+
- **Minimal:** all stages disabled
|
|
347
|
+
|
|
348
|
+
Stage-specific details (test command, dev server URL, build command) are inferred from the stack silently -- never shown to the user.
|
|
349
|
+
|
|
330
350
|
**--- Milestones ---**
|
|
331
351
|
|
|
332
352
|
**Step 5:** "What are the major milestones?" (free text)
|
|
@@ -345,6 +365,7 @@ Show the user a structured proposal (table format, not raw JSON):
|
|
|
345
365
|
- **Domain complexity** (workflows, org scoping, or simple CRUD)
|
|
346
366
|
- **Auth / identity model**
|
|
347
367
|
- **AI pattern + provider + processing** (if AI project)
|
|
368
|
+
- **Quality checks** (Full pipeline / Tests only / Minimal)
|
|
348
369
|
- **Any inferred concerns** (realtime, billing, etc. per design rule 4)
|
|
349
370
|
- **Editable assumptions** (if three-strike acceleration was used, clearly marked)
|
|
350
371
|
- **Unresolved decisions**
|
|
@@ -432,6 +453,52 @@ Only proceed to **1e. Execute on Approval** after the user selects "Create every
|
|
|
432
453
|
**Two-pass ticket creation:**
|
|
433
454
|
|
|
434
455
|
1. Call `claudestory_init` with name, type, language -- after this, all MCP tools become available dynamically
|
|
456
|
+
|
|
457
|
+
1b. **Configure autonomous recipe stages** based on the quality check answer from Step 4g. Construct a JSON object and apply via Bash:
|
|
458
|
+
```
|
|
459
|
+
claudestory config set-overrides --json '<JSON>'
|
|
460
|
+
```
|
|
461
|
+
|
|
462
|
+
**Quality level -> stage mapping:**
|
|
463
|
+
|
|
464
|
+
Full pipeline:
|
|
465
|
+
```json
|
|
466
|
+
{ "stages": {
|
|
467
|
+
"WRITE_TESTS": { "enabled": true, "onExhaustion": "plan" },
|
|
468
|
+
"TEST": { "enabled": true, "command": "<detected>" },
|
|
469
|
+
"VERIFY": { "enabled": true, "startCommand": "<detected>", "readinessUrl": "<detected>" },
|
|
470
|
+
"BUILD": { "enabled": true, "command": "<detected>" }
|
|
471
|
+
}}
|
|
472
|
+
```
|
|
473
|
+
|
|
474
|
+
Tests only:
|
|
475
|
+
```json
|
|
476
|
+
{ "stages": {
|
|
477
|
+
"TEST": { "enabled": true, "command": "<detected>" }
|
|
478
|
+
}}
|
|
479
|
+
```
|
|
480
|
+
|
|
481
|
+
Minimal: no overrides needed (default recipe handles it).
|
|
482
|
+
|
|
483
|
+
**Stack -> command detection (fill in `<detected>` values):**
|
|
484
|
+
|
|
485
|
+
| Stack | Test command | Dev server | Readiness URL | Build command |
|
|
486
|
+
|-------|-------------|------------|---------------|---------------|
|
|
487
|
+
| Next.js | `npm test` | `npm run dev` | `http://localhost:3000` | `npm run build` |
|
|
488
|
+
| Nuxt | `npm test` | `npm run dev` | `http://localhost:3000` | `npm run build` |
|
|
489
|
+
| SvelteKit | `npm test` | `npm run dev` | `http://localhost:5173` | `npm run build` |
|
|
490
|
+
| Vite (React/Vue) | `npm test` | `npm run dev` | `http://localhost:5173` | `npm run build` |
|
|
491
|
+
| FastAPI | `pytest` | `uvicorn main:app --reload` | `http://localhost:8000` | -- |
|
|
492
|
+
| Django | `python manage.py test` | `python manage.py runserver` | `http://localhost:8000` | -- |
|
|
493
|
+
| Express/Fastify | `npm test` | `npm run dev` | `http://localhost:3000` | `npm run build` |
|
|
494
|
+
| Go | `go test ./...` | `go run .` | `http://localhost:8080` | -- |
|
|
495
|
+
| Rust | `cargo test` | -- | -- | `cargo build` |
|
|
496
|
+
| Flutter | `flutter test` | -- | -- | `flutter build` |
|
|
497
|
+
| Default | `npm test` | `npm run dev` | `http://localhost:3000` | `npm run build` |
|
|
498
|
+
|
|
499
|
+
Skip VERIFY when: static site, CLI, library, package, mobile-only, BaaS (no custom server).
|
|
500
|
+
Skip BUILD when: Python, Go (compiled at test time).
|
|
501
|
+
|
|
435
502
|
2. Call `claudestory_phase_create` for each phase -- first phase with `atStart: true`, subsequent with `after: <previous-phase-id>`
|
|
436
503
|
3. **Pass 1:** Call `claudestory_ticket_create` for each ticket WITHOUT `blockedBy` (ticket IDs don't exist until after creation)
|
|
437
504
|
4. Call `claudestory_issue_create` for each imported GitHub issue
|
|
@@ -493,7 +560,7 @@ Same sanitization and preview rules as CLAUDE.md. Only write after explicit appr
|
|
|
493
560
|
After creation completes:
|
|
494
561
|
- Confirm what was created (e.g., "Created 5 phases, 18 tickets, 3 issues, CLAUDE.md, and RULES.md")
|
|
495
562
|
- Check if `.gitignore` includes `.story/snapshots/` (warn if missing -- snapshots should not be committed)
|
|
496
|
-
- Write an initial handover documenting the setup decisions. Explicitly capture which gates were answered and what was chosen: surface, characteristics, stack, system shape, execution model, deployment, data model, domain complexity, auth model, sensitive domain, AI pattern/provider/processing (if applicable), design source. This handover is the source of truth for decisions; CLAUDE.md is the project description.
|
|
563
|
+
- Write an initial handover documenting the setup decisions. Explicitly capture which gates were answered and what was chosen: surface, characteristics, stack, system shape, execution model, deployment, data model, domain complexity, auth model, sensitive domain, quality checks level, AI pattern/provider/processing (if applicable), design source. This handover is the source of truth for decisions; CLAUDE.md is the project description.
|
|
497
564
|
|
|
498
565
|
Present a brief completion message and tell the user how to start:
|
|
499
566
|
|