@shipfast-ai/shipfast 1.1.0 → 1.3.1

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.
Files changed (44) hide show
  1. package/README.md +166 -201
  2. package/agents/architect.md +7 -7
  3. package/agents/builder.md +9 -10
  4. package/agents/critic.md +3 -3
  5. package/agents/scout.md +1 -1
  6. package/agents/scribe.md +9 -13
  7. package/bin/install.js +250 -9
  8. package/brain/index.cjs +38 -80
  9. package/brain/indexer.cjs +6 -9
  10. package/brain/schema.sql +4 -2
  11. package/commands/sf/brain.md +4 -0
  12. package/commands/sf/check-plan.md +3 -4
  13. package/commands/sf/config.md +1 -0
  14. package/commands/sf/cost.md +83 -0
  15. package/commands/sf/diff.md +53 -0
  16. package/commands/sf/discuss.md +115 -68
  17. package/commands/sf/do.md +140 -72
  18. package/commands/sf/help.md +10 -5
  19. package/commands/sf/map.md +16 -24
  20. package/commands/sf/plan.md +6 -9
  21. package/commands/sf/project.md +4 -4
  22. package/commands/sf/rollback.md +70 -0
  23. package/commands/sf/ship.md +13 -0
  24. package/commands/sf/status.md +1 -3
  25. package/commands/sf/verify.md +4 -9
  26. package/commands/sf/worktree.md +286 -0
  27. package/core/ambiguity.cjs +229 -125
  28. package/core/architecture.cjs +5 -8
  29. package/core/autopilot.cjs +1 -0
  30. package/core/budget.cjs +5 -11
  31. package/core/constants.cjs +63 -0
  32. package/core/context-builder.cjs +1 -58
  33. package/core/executor.cjs +18 -4
  34. package/core/guardrails.cjs +6 -5
  35. package/core/model-selector.cjs +5 -48
  36. package/core/retry.cjs +5 -1
  37. package/core/session.cjs +2 -2
  38. package/core/skip-logic.cjs +5 -1
  39. package/core/verify.cjs +11 -14
  40. package/hooks/sf-first-run.js +2 -2
  41. package/mcp/server.cjs +135 -4
  42. package/package.json +18 -4
  43. package/scripts/postinstall.js +1 -1
  44. package/commands/sf/workstream.md +0 -51
@@ -5,7 +5,7 @@
5
5
  * Only runs when installed globally (npm i -g). Skips for local project deps.
6
6
  */
7
7
 
8
- // FIX #4: Only run auto-install when installed globally
8
+ // Only run auto-install when installed globally
9
9
  const isGlobal = process.env.npm_config_global === 'true' ||
10
10
  (process.env.npm_lifecycle_event === 'postinstall' && !process.env.INIT_CWD);
11
11
 
@@ -1,51 +0,0 @@
1
- ---
2
- name: sf:workstream
3
- description: "Manage parallel workstreams — create, list, switch, complete."
4
- argument-hint: "list | create <name> | switch <name> | complete <name>"
5
- allowed-tools:
6
- - Bash
7
- - AskUserQuestion
8
- ---
9
-
10
- <objective>
11
- Workstreams let you work on multiple features in parallel, each with its own branch and task tracking.
12
- Each workstream gets a namespaced set of tasks in brain.db.
13
- </objective>
14
-
15
- <process>
16
-
17
- ## Parse subcommand from $ARGUMENTS
18
-
19
- ### list
20
- ```bash
21
- sqlite3 -json .shipfast/brain.db "SELECT key, value FROM context WHERE scope = 'workstream' ORDER BY updated_at DESC;" 2>/dev/null
22
- git branch --list "sf/*" 2>/dev/null
23
- ```
24
- Show all workstreams with status (active/complete) and branch name.
25
-
26
- ### create <name>
27
- 1. Create git branch: `git checkout -b sf/[name]`
28
- 2. Store in brain.db:
29
- ```bash
30
- sqlite3 .shipfast/brain.db "INSERT OR REPLACE INTO context (id, scope, key, value, version, updated_at) VALUES ('workstream:[name]', 'workstream', '[name]', '{\"status\":\"active\",\"branch\":\"sf/[name]\",\"created\":\"[timestamp]\"}', 1, strftime('%s', 'now'));"
31
- ```
32
- 3. Report: `Workstream [name] created on branch sf/[name]`
33
-
34
- ### switch <name>
35
- 1. `git checkout sf/[name]`
36
- 2. Report: `Switched to workstream [name]`
37
-
38
- ### complete <name>
39
- 1. Ask: "Merge sf/[name] into current branch? [y/n]"
40
- 2. If yes: `git merge sf/[name]` then `git branch -d sf/[name]`
41
- 3. Update brain.db:
42
- ```bash
43
- sqlite3 .shipfast/brain.db "UPDATE context SET value = replace(value, 'active', 'complete') WHERE id = 'workstream:[name]';"
44
- ```
45
- 4. Report: `Workstream [name] completed and merged.`
46
-
47
- </process>
48
-
49
- <context>
50
- $ARGUMENTS
51
- </context>