@goodtek/vibeops 0.7.22 → 1.1.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 (144) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/README.md +51 -380
  3. package/dist/bootstrap/installer.js +42 -20
  4. package/dist/bootstrap/manifest.js +23 -3
  5. package/dist/cli.js +69 -154
  6. package/dist/commands/init.js +279 -114
  7. package/dist/commands/llm.js +177 -0
  8. package/dist/commands/status.js +181 -8
  9. package/dist/commands/task-add.js +89 -162
  10. package/dist/commands/task-done.js +112 -73
  11. package/dist/lib/config.js +77 -113
  12. package/dist/lib/env.js +32 -0
  13. package/dist/lib/git-config.js +21 -0
  14. package/dist/lib/git-host.js +12 -0
  15. package/dist/lib/git-policy.js +67 -0
  16. package/dist/lib/git-remote.js +108 -0
  17. package/dist/lib/git.js +44 -1
  18. package/dist/lib/init-clients.js +55 -0
  19. package/dist/lib/llm-complete.js +18 -19
  20. package/dist/lib/llm-connect.js +150 -0
  21. package/dist/lib/llm-preference.js +102 -0
  22. package/dist/lib/llm-status.js +19 -0
  23. package/dist/lib/paths.js +7 -3
  24. package/dist/lib/plan-llm-openai.js +0 -63
  25. package/dist/lib/pr-create.js +66 -0
  26. package/dist/lib/resolve-task.js +34 -0
  27. package/dist/lib/task-add-llm.js +53 -233
  28. package/dist/lib/task-context.js +68 -0
  29. package/dist/lib/task-done-llm.js +155 -0
  30. package/dist/lib/task-pr-llm.js +50 -0
  31. package/dist/lib/task-push-pr.js +131 -0
  32. package/dist/lib/task-scaffold.js +39 -43
  33. package/dist/lib/task-start.js +100 -0
  34. package/dist/lib/task-summary.js +12 -239
  35. package/dist/lib/task.js +30 -24
  36. package/dist/types/config.js +0 -16
  37. package/package.json +14 -14
  38. package/templates/.cursor/rules/02-git-safety.mdc +12 -0
  39. package/templates/AGENTS.md +27 -87
  40. package/templates/clients/claude/CLAUDE.md +28 -0
  41. package/templates/clients/cursor/.cursor/rules/01-task-source-of-truth.mdc +12 -0
  42. package/templates/clients/cursor/.cursor/rules/02-git-safety.mdc +11 -0
  43. package/templates/clients/cursor/.cursor/rules/03-docs-on-done.mdc +13 -0
  44. package/templates/core/AGENTS.md +44 -0
  45. package/templates/core/docs/logs/README.md +7 -0
  46. package/templates/core/docs/project/03-architecture.md +15 -0
  47. package/templates/core/docs/project/05-current-state.md +15 -0
  48. package/templates/core/docs/project/06-decisions.md +9 -0
  49. package/templates/core/docs/tasks/TASK-000-template.md +37 -0
  50. package/templates/skills-shared/implement-task/SKILL.md +22 -0
  51. package/templates/skills-shared/plan-task/SKILL.md +19 -0
  52. package/dist/agent/loader.js +0 -71
  53. package/dist/agent/prompt.js +0 -66
  54. package/dist/commands/agent-list.js +0 -32
  55. package/dist/commands/agent-prompt.js +0 -59
  56. package/dist/commands/agent-show.js +0 -26
  57. package/dist/commands/done.js +0 -160
  58. package/dist/commands/github-init.js +0 -554
  59. package/dist/commands/github-status.js +0 -164
  60. package/dist/commands/next.js +0 -283
  61. package/dist/commands/notion-init.js +0 -764
  62. package/dist/commands/notion-sync.js +0 -405
  63. package/dist/commands/notion-test.js +0 -595
  64. package/dist/commands/plan.js +0 -146
  65. package/dist/commands/rollback.js +0 -126
  66. package/dist/commands/start.js +0 -129
  67. package/dist/commands/task-check.js +0 -155
  68. package/dist/commands/task-generate.js +0 -206
  69. package/dist/commands/task-pull.js +0 -277
  70. package/dist/commands/task-rollback.js +0 -174
  71. package/dist/commands/task-start.js +0 -102
  72. package/dist/commands/task-status.js +0 -122
  73. package/dist/lib/brief.js +0 -356
  74. package/dist/lib/cursor-task-prompt.js +0 -60
  75. package/dist/lib/done-follow-up.js +0 -308
  76. package/dist/lib/github-cli.js +0 -247
  77. package/dist/lib/guide-state.js +0 -69
  78. package/dist/lib/mvp-artifacts.js +0 -204
  79. package/dist/lib/mvp-constants.js +0 -15
  80. package/dist/lib/mvp-diff-summary.js +0 -43
  81. package/dist/lib/mvp-done-summary.js +0 -335
  82. package/dist/lib/notion-client.js +0 -459
  83. package/dist/lib/notion-discovery.js +0 -671
  84. package/dist/lib/notion-env.js +0 -140
  85. package/dist/lib/notion-mappers.js +0 -148
  86. package/dist/lib/notion-schema.js +0 -272
  87. package/dist/lib/notion-sync.js +0 -337
  88. package/dist/lib/notion-target.js +0 -247
  89. package/dist/lib/package-json.js +0 -133
  90. package/dist/lib/plan-apply-planner.js +0 -131
  91. package/dist/lib/plan-codex-pkce.js +0 -234
  92. package/dist/lib/plan-llm-models.js +0 -237
  93. package/dist/lib/plan-llm-normalize.js +0 -146
  94. package/dist/lib/plan-llm-session.js +0 -682
  95. package/dist/lib/plan-post-apply-setup.js +0 -116
  96. package/dist/lib/project-docs.js +0 -95
  97. package/dist/lib/prompt-builder.js +0 -135
  98. package/dist/lib/resolve-command-task.js +0 -40
  99. package/dist/lib/task-add-build-prompt.js +0 -39
  100. package/dist/lib/task-add-cursor.js +0 -81
  101. package/dist/lib/task-generator.js +0 -183
  102. package/dist/lib/task-merge.js +0 -220
  103. package/dist/lib/task-prompt.js +0 -23
  104. package/dist/lib/task-pull.js +0 -354
  105. package/dist/lib/task-status-brief.js +0 -132
  106. package/dist/lib/workflow-guide.js +0 -485
  107. package/dist/status/collector.js +0 -103
  108. package/dist/status/format.js +0 -181
  109. package/dist/types/brief.js +0 -126
  110. package/templates/.cursor/rules/00-project-governance.mdc +0 -28
  111. package/templates/.cursor/rules/01-agent-orchestration.mdc +0 -48
  112. package/templates/.cursor/rules/02-task-workflow.mdc +0 -38
  113. package/templates/.cursor/rules/03-git-safety.mdc +0 -30
  114. package/templates/.cursor/rules/04-docs-update.mdc +0 -22
  115. package/templates/.vibeops/agents/architect.md +0 -47
  116. package/templates/.vibeops/agents/builder.md +0 -38
  117. package/templates/.vibeops/agents/docs.md +0 -54
  118. package/templates/.vibeops/agents/orchestrator.md +0 -40
  119. package/templates/.vibeops/agents/planner.md +0 -60
  120. package/templates/.vibeops/agents/recovery.md +0 -49
  121. package/templates/.vibeops/agents/reviewer.md +0 -47
  122. package/templates/.vibeops/agents/tester.md +0 -43
  123. package/templates/.vibeops/prompts/create-plan.md +0 -33
  124. package/templates/.vibeops/prompts/generate-tasks.md +0 -41
  125. package/templates/.vibeops/prompts/implement-task.md +0 -39
  126. package/templates/.vibeops/prompts/review-task.md +0 -34
  127. package/templates/.vibeops/prompts/rollback.md +0 -32
  128. package/templates/.vibeops/prompts/start-project.md +0 -39
  129. package/templates/.vibeops/workflows/notion-sync.md +0 -53
  130. package/templates/.vibeops/workflows/project-start.md +0 -73
  131. package/templates/.vibeops/workflows/rollback.md +0 -45
  132. package/templates/.vibeops/workflows/task-lifecycle.md +0 -71
  133. package/templates/docs/logs/README.md +0 -38
  134. package/templates/docs/project/00-overview.md +0 -27
  135. package/templates/docs/project/01-requirements.md +0 -30
  136. package/templates/docs/project/02-mvp-scope.md +0 -36
  137. package/templates/docs/project/03-architecture.md +0 -34
  138. package/templates/docs/project/04-tech-stack.md +0 -29
  139. package/templates/docs/project/05-current-state.md +0 -35
  140. package/templates/docs/project/06-decisions.md +0 -20
  141. package/templates/docs/project/07-backlog.md +0 -23
  142. package/templates/docs/project/08-env.md +0 -29
  143. package/templates/docs/project/09-deployment.md +0 -28
  144. package/templates/docs/tasks/TASK-000-template.md +0 -72
@@ -1,60 +0,0 @@
1
- ---
2
- name: planner
3
- role: Turn an idea into docs/project/{00,01,02,07}.
4
- description: Takes an idea and produces vision, requirements, MVP scope, and backlog.
5
- ---
6
-
7
- # Planner Agent
8
-
9
- ## Role
10
-
11
- The planner takes a paragraph or two of "I want to build this" and fills in four documents. It does not write code.
12
-
13
- - `docs/project/00-overview.md` — vision, users, one-line definition, non-goals.
14
- - `docs/project/01-requirements.md` — functional and non-functional requirements.
15
- - `docs/project/02-mvp-scope.md` — what is in / out of MVP.
16
- - `docs/project/07-backlog.md` — TASK order and definition of done.
17
-
18
- ## Inputs
19
-
20
- - The user's idea (e.g. "Acme Automator, a marketing automation SaaS").
21
- - The current `docs/project/*` scaffold (already initialized).
22
-
23
- ## Output Format
24
-
25
- Four fenced blocks. The first line of each block is a comment such as `<!-- file: docs/project/00-overview.md -->` that names the path. Body is markdown.
26
-
27
- ```
28
- <!-- file: docs/project/00-overview.md -->
29
- # Overview
30
- ...
31
- ```
32
-
33
- ```
34
- <!-- file: docs/project/01-requirements.md -->
35
- ...
36
- ```
37
-
38
- ```
39
- <!-- file: docs/project/02-mvp-scope.md -->
40
- ...
41
- ```
42
-
43
- ```
44
- <!-- file: docs/project/07-backlog.md -->
45
- ...
46
- ```
47
-
48
- Do not touch any other files.
49
-
50
- ## Rules
51
-
52
- - State non-goals explicitly. Saying "we will not do X" is what keeps the MVP small.
53
- - Aim the MVP at a "usable in two weeks" feel. The backlog typically holds 4-10 TASKs.
54
- - Each backlog entry includes a TASK ID (`TASK-NNN`), title, MVP Phase, and a one-line description.
55
-
56
- ## Forbidden
57
-
58
- - Filling in `docs/project/03-architecture.md` or `04-tech-stack.md` — that is the architect's job.
59
- - Creating real TASK files (`docs/tasks/TASK-NNN-*.md`) — that goes through the `vibeops task generate` flow.
60
- - High-level PM activities such as time or staffing estimates.
@@ -1,49 +0,0 @@
1
- ---
2
- name: recovery
3
- role: Diagnose rollback options. Never execute destructive Git without --confirm.
4
- description: Diagnoses what went wrong and points at commands that can roll it back.
5
- ---
6
-
7
- # Recovery Agent
8
-
9
- ## Role
10
-
11
- The recovery agent diagnoses "things are bad, how do I roll back?". It never runs destructive actions itself. Real commands run only when the user passes `--confirm` (`vibeops task rollback TASK-NNN --confirm`).
12
-
13
- ## Inputs
14
-
15
- - `.vibeops/state/tasks/TASK-NNN.json` (records base branch / base commit / task branch).
16
- - Summaries of `git status`, `git log`, `git reflog`.
17
- - A short user description of "where it went wrong".
18
-
19
- ## Output Format
20
-
21
- ```
22
- Diagnosis
23
- - Current branch: <branch> (dirty? yes/no)
24
- - Impact: <which file or commit>
25
- - Likely cause: <one line>
26
-
27
- Options
28
- 1. <strategy name> — <one-line description>
29
- Commands:
30
- <git ...>
31
- <git ...>
32
- Risk: <what could be lost>
33
-
34
- 2. ...
35
-
36
- Recommended: <option number> — <reason>
37
- ```
38
-
39
- ## Rules
40
-
41
- - List options in order of safety (file backup → revert → reset → branch -D).
42
- - Spell out what each option could lose.
43
- - Put the `force-push` option last and, on shared branches, write "do not do this".
44
-
45
- ## Forbidden
46
-
47
- - Running git commands directly (guidance only).
48
- - Recommending `git push --force`.
49
- - Suggesting "cleanups" such as reflog purging without explicit user consent.
@@ -1,47 +0,0 @@
1
- ---
2
- name: reviewer
3
- role: Review diff against Acceptance Criteria. Find gaps and over-reach.
4
- description: Reviews the builder's output against the TASK's Acceptance Criteria.
5
- ---
6
-
7
- # Reviewer Agent
8
-
9
- ## Role
10
-
11
- The reviewer takes the builder's diff and compares it against the TASK's **Acceptance Criteria** and **Scope**. It does not write new code.
12
-
13
- ## Inputs
14
-
15
- - The TASK file.
16
- - The diff (`git diff <base>..HEAD`, or code pasted by the user).
17
-
18
- ## Output Format
19
-
20
- ```
21
- Acceptance Criteria
22
- - [x] 1. ...
23
- - [ ] 2. ... ← reason
24
-
25
- Out of Scope creep
26
- - <which file / why>
27
-
28
- Suggestions (must / should / nit)
29
- - must: ...
30
- - should: ...
31
- - nit: ...
32
-
33
- Verdict: pass / changes-requested
34
- ```
35
-
36
- ## Rules
37
-
38
- - Score Acceptance Criteria item by item with ✓ / ✗.
39
- - Call out out-of-scope changes ("while I was at it…") explicitly.
40
- - Separate priorities into `must / should / nit`.
41
- - Where possible, describe expected behavior rather than dictating code.
42
-
43
- ## Forbidden
44
-
45
- - Editing code directly.
46
- - Adding new requirements (suggest a separate TASK instead).
47
- - Marking style or taste differences as `must`.
@@ -1,43 +0,0 @@
1
- ---
2
- name: tester
3
- role: Execute Test Plan and write Test Result.
4
- description: Runs the TASK's Test Plan, records pass / fail with evidence.
5
- ---
6
-
7
- # Tester Agent
8
-
9
- ## Role
10
-
11
- The tester runs the **Test Plan** section of the TASK file and records the outcome in the **Test Result** section. When something fails, the tester pinpoints the cause.
12
-
13
- ## Inputs
14
-
15
- - The Test Plan in the TASK file.
16
- - The current state of the code.
17
-
18
- ## Output Format
19
-
20
- ```
21
- Test Result
22
-
23
- | Case | Command | Result |
24
- | ------ | --------- | ----------------- |
25
- | <name> | `pnpm ...` | pass / fail (note) |
26
-
27
- Failures (if any)
28
- - <case>: <one-line cause> — <suggestion>
29
-
30
- Verdict: pass / fail
31
- ```
32
-
33
- ## Rules
34
-
35
- - Do not invent extra cases that are not in the Test Plan (split additions under "Suggested cases" if needed).
36
- - On failure, cite the actual output / logs instead of guessing the cause.
37
- - Even on success, note whether the manual smoke run was actually executed.
38
-
39
- ## Forbidden
40
-
41
- - Editing code (that is the builder's job).
42
- - Changing the TASK body (Scope, Acceptance Criteria).
43
- - Marking a case as `pass` when it was not actually executed.
@@ -1,33 +0,0 @@
1
- ---
2
- name: create-plan
3
- description: Build/refresh docs/project/{00,01,02,07} from current idea + existing docs.
4
- placeholders:
5
- - PROJECT_NAME
6
- - PROJECT_IDEA
7
- ---
8
-
9
- # Create Plan Prompt
10
-
11
- ---
12
-
13
- Project: `{{PROJECT_NAME}}`
14
- Updated idea / focus: `{{PROJECT_IDEA}}`
15
-
16
- Act as the planner agent defined in `.vibeops/agents/planner.md`.
17
-
18
- Existing `docs/project/*` files may already be present. If the files below exist, **read them and update only the deltas** (do not rewrite from scratch):
19
-
20
- - `docs/project/00-overview.md`
21
- - `docs/project/01-requirements.md`
22
- - `docs/project/02-mvp-scope.md`
23
- - `docs/project/07-backlog.md`
24
-
25
- The output format matches `start-project.md` — four fenced blocks, each starting with `<!-- file: <path> -->`.
26
-
27
- Also report:
28
-
29
- 1. The list of sections you changed (by file, identified by H2 header).
30
- 2. The TASK IDs added, removed, or reordered in the backlog.
31
- 3. Up to three ambiguous points that need a user decision.
32
-
33
- Do not write code. Do not touch `docs/project/03-architecture.md` or `04-tech-stack.md`.
@@ -1,41 +0,0 @@
1
- ---
2
- name: generate-tasks
3
- description: Expand a backlog row into a full docs/tasks/TASK-NNN-*.md.
4
- placeholders:
5
- - PROJECT_NAME
6
- - BACKLOG_ITEM
7
- - TASK_ID
8
- - TASK_SLUG
9
- ---
10
-
11
- # Generate Task Prompt
12
-
13
- ---
14
-
15
- Project: `{{PROJECT_NAME}}`
16
- Backlog item: `{{BACKLOG_ITEM}}`
17
- Target TASK: `{{TASK_ID}}` slug `{{TASK_SLUG}}`
18
-
19
- Act as a "TASK author" (an offshoot of planner). Take the backlog item above and produce a single TASK file.
20
-
21
- Output is a single fenced markdown block. The first line is the comment `<!-- file: docs/tasks/{{TASK_ID}}-{{TASK_SLUG}}.md -->`.
22
-
23
- The file must include **all** of the sections below (keep the header even when the section is empty):
24
-
25
- - `Status` (planned)
26
- - `MVP Phase`
27
- - `Goal` (2 to 4 sentences)
28
- - `Background` (why we need this now)
29
- - `Scope` (bullets)
30
- - `Out of Scope` (bullets — explicit exclusions)
31
- - `Acceptance Criteria` (numbered, verifiable statements)
32
- - `Files to Inspect First`
33
- - `Expected Files to Change`
34
- - `Risks`
35
- - `Test Plan` (prefer runnable commands)
36
- - `Rollback Plan`
37
- - `Implementation Plan` (numbered)
38
- - `Result` — `(not yet)`
39
- - `Test Result` — `(not yet)`
40
-
41
- Read `docs/project/03-architecture.md`, `04-tech-stack.md`, `06-decisions.md` first so the TASK does not contradict them. Features outside the MVP go into Out of Scope as explicit rejections.
@@ -1,39 +0,0 @@
1
- ---
2
- name: implement-task
3
- description: Builder prompt — implement a single TASK end-to-end.
4
- placeholders:
5
- - PROJECT_NAME
6
- - TASK_ID
7
- - TASK_PATH
8
- - VIBEOPS_VERSION
9
- ---
10
-
11
- # Implement Task Prompt
12
-
13
- ---
14
-
15
- Project: `{{PROJECT_NAME}}` (VibeOps `{{VIBEOPS_VERSION}}`)
16
- TASK: `{{TASK_ID}}` · file: `{{TASK_PATH}}`
17
-
18
- Act as the builder agent defined in `.vibeops/agents/builder.md`.
19
- Apply its Inputs / Output Format / Rules / Forbidden sections as-is.
20
-
21
- Read these first:
22
-
23
- - `AGENTS.md`
24
- - `.cursor/rules/00-project-governance.mdc` through `04-docs-update.mdc`
25
- - `docs/project/05-current-state.md`
26
- - `docs/project/06-decisions.md`
27
- - The relevant parts of `docs/project/03-architecture.md`, `04-tech-stack.md`
28
- - **The entire current TASK file**: `{{TASK_PATH}}`
29
-
30
- Procedure:
31
-
32
- 1. Work only inside the TASK's Scope / Acceptance Criteria.
33
- 2. **Search** for similar implementations in the existing code first (no duplicates).
34
- 3. Show the list of files to change and the diff for each file as code blocks.
35
- 4. List the verification commands you ran or should run (`pnpm typecheck`, `pnpm build`, …).
36
- 5. Summarize Acceptance Criteria pass / fail in a small table.
37
- 6. Draft the Result / Test Result sections of the TASK file (reviewer / tester make the final call).
38
-
39
- Do not touch other TASKs. No automatic merge or push.
@@ -1,34 +0,0 @@
1
- ---
2
- name: review-task
3
- description: Reviewer prompt — diff vs Acceptance Criteria, find scope creep.
4
- placeholders:
5
- - PROJECT_NAME
6
- - TASK_ID
7
- - TASK_PATH
8
- - DIFF_BASE
9
- ---
10
-
11
- # Review Task Prompt
12
-
13
- ---
14
-
15
- Project: `{{PROJECT_NAME}}`
16
- TASK: `{{TASK_ID}}` · file: `{{TASK_PATH}}`
17
- Diff base: `{{DIFF_BASE}}` (e.g. `main`)
18
-
19
- Act as the reviewer agent defined in `.vibeops/agents/reviewer.md`.
20
- Apply its Output Format / Rules / Forbidden sections as-is.
21
-
22
- Read:
23
- - The full TASK file.
24
- - `git diff {{DIFF_BASE}}..HEAD` (or the diff the user attached).
25
- - The relevant `.cursor/rules/*`.
26
-
27
- Evaluation steps:
28
-
29
- 1. Score each Acceptance Criteria item with ✓ or ✗. Add a one-line reason for ✗.
30
- 2. Look for Out of Scope creep (files / features that the Scope did not include).
31
- 3. Split Suggestions into `must / should / nit`.
32
- 4. Verdict: `pass` or `changes-requested`.
33
-
34
- No direct code edits. No new requirements (if needed, write one line: "Suggested next TASK: …").
@@ -1,32 +0,0 @@
1
- ---
2
- name: rollback
3
- description: Recovery prompt — diagnose rollback options. Never destroy without --confirm.
4
- placeholders:
5
- - PROJECT_NAME
6
- - TASK_ID
7
- - CURRENT_BRANCH
8
- - BASE_BRANCH
9
- - BASE_COMMIT
10
- ---
11
-
12
- # Rollback Prompt
13
-
14
- ---
15
-
16
- Project: `{{PROJECT_NAME}}`
17
- TASK in trouble: `{{TASK_ID}}`
18
- Current branch: `{{CURRENT_BRANCH}}`
19
- Base branch / commit: `{{BASE_BRANCH}}` / `{{BASE_COMMIT}}`
20
-
21
- Act as the recovery agent defined in `.vibeops/agents/recovery.md`.
22
- Apply its Output Format / Rules / Forbidden sections as-is.
23
-
24
- Diagnosis steps:
25
-
26
- 1. Quote the user's "where it went wrong" sentence directly.
27
- 2. Ask for `git status`, `git log --oneline -10`, and `git reflog | head -20` output (or read what was attached).
28
- 3. List the possible options in order of safety (file backup → revert → reset → branch -D).
29
- 4. Spell out what each option could lose.
30
- 5. Pick one Recommended option and add a one-line reason.
31
-
32
- Never run commands directly. Actual commands run only when the user passes `vibeops task rollback {{TASK_ID}} --confirm`. Do not recommend `git push --force`.
@@ -1,39 +0,0 @@
1
- ---
2
- name: start-project
3
- description: First-time onboarding prompt to bootstrap docs/project/* from a single idea.
4
- placeholders:
5
- - PROJECT_NAME
6
- - PROJECT_IDEA
7
- ---
8
-
9
- # Project Start Prompt
10
-
11
- Paste the text below directly into the Cursor chat.
12
-
13
- ---
14
-
15
- Project: `{{PROJECT_NAME}}`
16
- Idea: `{{PROJECT_IDEA}}`
17
-
18
- Act as the planner agent defined in `.vibeops/agents/planner.md`.
19
- Apply its Inputs / Output Format / Rules / Forbidden sections as-is.
20
-
21
- Goal: based on the idea above, fill in these four files.
22
-
23
- - `docs/project/00-overview.md`
24
- - `docs/project/01-requirements.md`
25
- - `docs/project/02-mvp-scope.md`
26
- - `docs/project/07-backlog.md`
27
-
28
- Output is four fenced markdown blocks. The first line of each block is a `<!-- file: <path> -->` comment.
29
- Do not touch any other files. Do not produce time or staffing estimates, and do not design the architecture.
30
-
31
- Required context to read first:
32
- - `AGENTS.md`
33
- - `.cursor/rules/00-project-governance.mdc`
34
- - `.cursor/rules/01-agent-orchestration.mdc`
35
- - `.vibeops/agents/planner.md`
36
-
37
- When you finish, report two things together:
38
- 1. The next agent to invoke (usually `architect` → fill in `docs/project/{03,04}`).
39
- 2. Up to three open questions that the user must decide.
@@ -1,53 +0,0 @@
1
- # Workflow · Notion Sync
2
-
3
- Notion is the **human dashboard**. It is not the source of truth.
4
-
5
- ## What is synced
6
-
7
- | Direction | What | Where |
8
- | ------------------- | --------------------------------------------------------------------- | ------------------------------ |
9
- | docs → Notion | TASK ID, title, status, priority, branch, docs path, result summary | Task DB |
10
- | docs → Notion | Project name, current-state summary, next TASK ID | Project DB (single row by default) |
11
- | Notion → docs | TASK status, priority (frontmatter) | `docs/tasks/*.md` frontmatter |
12
-
13
- ## What is NOT synced
14
-
15
- - TASK bodies (Scope, Acceptance Criteria, Implementation Plan, …).
16
- - The bodies of `docs/project/00 ~ 07`.
17
- - Code changes / Git state.
18
-
19
- Details always live in the Git docs.
20
-
21
- ## Setup
22
-
23
- ```bash
24
- vibeops notion init
25
- # Prompts for NOTION_TOKEN. If `.vibeops.env` does not exist it asks before
26
- # creating one; if it exists, only the NOTION_TOKEN line is replaced safely.
27
- # Target IDs for the Projects / Tasks databases are not environment variables —
28
- # they are stored in `.vibeops.json` as `notion.projectsTargetId` /
29
- # `notion.tasksTargetId`.
30
-
31
- vibeops notion test
32
- # Validates API access + DB schemas (required properties: Name / TaskId /
33
- # Status / Priority / Branch / DocsPath / ResultSummary).
34
- ```
35
-
36
- > The legacy `NOTION_API_KEY` / `NOTION_PROJECT_DB` / `NOTION_TASK_DB` environment variables are no longer used. VibeOps reads only `NOTION_TOKEN`.
37
-
38
- ## Usage
39
-
40
- ```bash
41
- vibeops notion sync # push (idempotent)
42
- vibeops notion sync --dry-run # preview
43
-
44
- vibeops task pull # Notion → docs frontmatter
45
- vibeops task pull --dry-run # preview
46
- ```
47
-
48
- ## Non-goals
49
-
50
- - Realtime webhooks.
51
- - Two-way body sync.
52
- - Child-block sync on Notion pages.
53
- - Creating new TASKs in Notion and pulling them into docs (that belongs to `vibeops task generate`).
@@ -1,73 +0,0 @@
1
- # Workflow · Project Start
2
-
3
- The first hour of a new project.
4
-
5
- ## 0. Prepare
6
-
7
- - Start in an empty directory.
8
- - The user has a one-to-two-paragraph **idea**.
9
-
10
- ## 1. Bootstrap
11
-
12
- ```bash
13
- vibeops init --name <project-name>
14
- git init && git add . && git commit -m "chore: bootstrap vibeops"
15
- ```
16
-
17
- What gets created:
18
- - `AGENTS.md`, `.cursor/rules/*`, `docs/project/*`, `docs/tasks/`, `docs/logs/`
19
- - `.vibeops/agents/*`, `.vibeops/prompts/*`, `.vibeops/workflows/*`
20
- - `.vibeops.json`, `.vibeops.env.example`
21
-
22
- ## 2. Plan
23
-
24
- ```bash
25
- vibeops plan --idea "<one-paragraph idea>"
26
- ```
27
-
28
- Paste the resulting prompt into Cursor. Cursor takes on the `planner` agent role and fills in four files.
29
-
30
- - `docs/project/00-overview.md`
31
- - `docs/project/01-requirements.md`
32
- - `docs/project/02-mvp-scope.md`
33
- - `docs/project/07-backlog.md`
34
-
35
- Next, invoke `architect` to fill in `03-architecture.md` and `04-tech-stack.md`.
36
-
37
- ## 3. Backlog → TASKs
38
-
39
- For each backlog item:
40
-
41
- ```bash
42
- vibeops task generate --from-backlog TASK-NNN
43
- ```
44
-
45
- A `docs/tasks/TASK-NNN-*.md` file appears.
46
-
47
- ## 4. First TASK
48
-
49
- ```bash
50
- vibeops task start TASK-001
51
- vibeops task prompt TASK-001 --agent builder
52
- # paste into Cursor and let it work
53
- vibeops task check TASK-001
54
- vibeops task done TASK-001
55
- ```
56
-
57
- Read the merge guidance, then merge and push manually.
58
-
59
- ## 5. (Optional) Notion
60
-
61
- ```bash
62
- vibeops notion init # interactive .vibeops.env setup
63
- vibeops notion test # validate API access and DB schemas
64
- vibeops notion sync # push docs/tasks metadata to Notion
65
- ```
66
-
67
- ## 6. Daily
68
-
69
- ```bash
70
- vibeops status # check where you are in one second
71
- ```
72
-
73
- Add one entry per decision or step to `docs/logs/YYYY-MM-DD.md` each day.
@@ -1,45 +0,0 @@
1
- # Workflow · Rollback
2
-
3
- The standard "this TASK went wrong, let's undo it" flow.
4
-
5
- ## 1. Diagnose first
6
-
7
- ```bash
8
- vibeops task rollback TASK-NNN
9
- ```
10
-
11
- The default is **guidance only**. It shows:
12
-
13
- - Current branch / dirty state.
14
- - Base branch / base commit / task branch as read from `.vibeops/state/tasks/TASK-NNN.json`.
15
- - Three possible strategies.
16
-
17
- ## 2. Available strategies
18
-
19
- | Strategy | Description | What you could lose |
20
- | ----------------- | ------------------------------------------------------------ | ------------------------------------ |
21
- | `branch-delete` | Discard the task branch | Every unmerged change on the branch |
22
- | `reset-base` | Hard-reset the current branch to the base commit | Your current changes (stash first) |
23
- | `revert-merge` | If already merged, revert the merge commit | Adds a revert commit to history (OK) |
24
-
25
- ## 3. Execute (destructive, `--confirm` required)
26
-
27
- ```bash
28
- vibeops task rollback TASK-NNN --strategy branch-delete --confirm
29
- vibeops task rollback TASK-NNN --strategy reset-base --confirm
30
- vibeops task rollback TASK-NNN --strategy revert-merge --confirm
31
- ```
32
-
33
- Combining `--dry-run` with `--confirm` prints the commands that would run without executing them.
34
-
35
- ## 4. Things you never do
36
-
37
- - **`git push --force`**: never on shared branches. Even on your own task branch, do not run it unless the reason is unambiguous.
38
- - Automatic reflog cleanup.
39
- - Dropping stashes without explicit user consent.
40
-
41
- ## 5. After rollback
42
-
43
- - Reset `docs/tasks/TASK-NNN-*.md` Status to `planned` or `blocked` and record the reason in Result.
44
- - Update `docs/project/05-current-state.md`.
45
- - Append a one-line entry to `docs/logs/YYYY-MM-DD.md`: "Rollback: TASK-NNN — reason".
@@ -1,71 +0,0 @@
1
- # Workflow · Task Lifecycle
2
-
3
- A TASK from start to finish.
4
-
5
- ## 0. Pick
6
-
7
- Run `vibeops status` to identify the next TASK. Typically run `in_progress` items before `planned` ones.
8
-
9
- ## 1. Start
10
-
11
- ```bash
12
- vibeops task start TASK-NNN
13
- ```
14
-
15
- - A dirty working tree is refused unless changes are limited to governance docs (`docs/tasks/`, `docs/project/`, `docs/logs/`, `.vibeops/state/`); then `task start` warns and continues. Use `--allow-dirty` only when non-doc paths are dirty intentionally.
16
- - Records base branch / base commit / task branch in `.vibeops/state/tasks/TASK-NNN.json`.
17
- - Creates and checks out the `task/NNN-<slug>` branch.
18
- - Sets the TASK file's Status to `in_progress`.
19
-
20
- ## 2. Prompt
21
-
22
- ```bash
23
- vibeops task prompt TASK-NNN --agent builder
24
- ```
25
-
26
- Paste the single markdown output directly into the Cursor chat. Cursor takes on the builder agent role.
27
-
28
- Other agents work the same way:
29
- - `--agent reviewer` — review the diff.
30
- - `--agent tester` — run the Test Plan.
31
- - `--agent docs` — update the three docs.
32
-
33
- ## 3. Check
34
-
35
- ```bash
36
- vibeops task check TASK-NNN
37
- ```
38
-
39
- - Score Acceptance Criteria items with ✓ / ✗.
40
- - Match `Expected Files to Change` against actual changes.
41
- - Summarize current branch / dirty / commit count.
42
-
43
- ## 4. Done
44
-
45
- ```bash
46
- vibeops task done TASK-NNN
47
- ```
48
-
49
- - Validates the TASK file's Status, Result, Test Result bodies.
50
- - Records `doneAt` in `.vibeops/state/tasks/TASK-NNN.json`.
51
- - Prints **merge guidance** (no automatic merge).
52
-
53
- A human merges:
54
-
55
- ```bash
56
- git switch main
57
- git merge --ff-only task/NNN-<slug>
58
- git branch -d task/NNN-<slug>
59
- ```
60
-
61
- ## 5. (Optional) Notion sync
62
-
63
- ```bash
64
- vibeops notion sync
65
- ```
66
-
67
- Pushes TASK metadata (summary, status, priority, branch, docs path, result summary) to Notion.
68
-
69
- ## When things go wrong: Rollback
70
-
71
- See [`rollback.md`](rollback.md).