gigaplan 0.1.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 +114 -0
- package/bin/gigaplan.js +3 -0
- package/dist/cli.js +188 -0
- package/dist/markdown.js +196 -0
- package/dist/paths.js +13 -0
- package/dist/render.js +48 -0
- package/dist/review-store.js +84 -0
- package/dist/server.js +160 -0
- package/dist/session-store.js +92 -0
- package/dist/types.js +1 -0
- package/package.json +44 -0
- package/public/chrome.css +450 -0
- package/public/chrome.js +648 -0
- package/skills/gigaplan/SKILL.md +97 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gigaplan
|
|
3
|
+
description: Turn an implementation plan, design doc, or multi-step technical proposal into a browser-based review page instead of pasting it into chat as prose or asking the user to read it in the terminal — numbered collapsible sections, per-step inline comments, a review-coverage sidebar, and a finish-your-review panel that returns a structured verdict (approve / approve with comments / request changes) via CLI polling, so the plan can be revised and re-reviewed in a loop until approved. Use this whenever about to hand a plan back for review — finishing plan-mode output, proposing a migration or refactor, or any change with more than a couple of steps — even if the user never asked for a "review tool" by name. Always write the plan as plain Markdown first, never HTML; gigaplan does all the rendering and theming itself.
|
|
4
|
+
user-invocable: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
gigaplan is a local, single-purpose review tool: it takes a plan written in plain
|
|
8
|
+
Markdown and opens it in the user's browser as a themed review page — each `##`
|
|
9
|
+
section gets a number, a collapse toggle, and a "Reviewed" checkbox; every
|
|
10
|
+
paragraph, list item, code fence, and heading is individually commentable; a
|
|
11
|
+
sidebar tracks review coverage and lists every comment left so far; and a
|
|
12
|
+
"Finish your review" panel collects an overall comment plus a verdict (Approve /
|
|
13
|
+
Request changes) before submitting.
|
|
14
|
+
|
|
15
|
+
The hard rule: never hand-author HTML for a plan, even if it would look nicer.
|
|
16
|
+
All HTML, CSS, and interactivity are gigaplan's own code, written once — that's
|
|
17
|
+
what keeps a review cheap in tokens for the agent and pleasant to read for the
|
|
18
|
+
reviewer. If the task is a diagram, a comparison, or some other visual artifact
|
|
19
|
+
that isn't a plan under review, use whatever general-purpose artifact tooling
|
|
20
|
+
the project has instead — gigaplan only knows how to render and review plans.
|
|
21
|
+
|
|
22
|
+
## Workflow
|
|
23
|
+
|
|
24
|
+
1. **Write the plan as a plain `.md` file.** Prefer `.gigaplan/plans/<slug>.md`
|
|
25
|
+
inside the project being worked on (see "Plan file conventions" below). Use
|
|
26
|
+
real Markdown structure — a `##` heading per step, bullet or numbered lists
|
|
27
|
+
for details — since gigaplan turns each `##` into its own reviewable section
|
|
28
|
+
and anchors comments individually to every heading, paragraph, list item,
|
|
29
|
+
code fence, and table; a plan that's one giant paragraph gives the reviewer
|
|
30
|
+
nothing specific to comment on.
|
|
31
|
+
2. **Open it for review:** run `npx -y gigaplan review <path-to-plan.md>`. This
|
|
32
|
+
opens (or reuses) a browser tab. Tell the user in one short sentence that the
|
|
33
|
+
plan is open for review in their browser — do not restate the plan's content
|
|
34
|
+
in chat; the browser page is the plan.
|
|
35
|
+
3. **Wait for the review:** run `npx -y gigaplan poll <path-to-plan.md>`. This
|
|
36
|
+
blocks until the user submits a review. Just call it and wait; don't do other
|
|
37
|
+
work in the meantime.
|
|
38
|
+
4. **Read the verdict.**
|
|
39
|
+
- If `approved` and there are no comments (or only informational ones),
|
|
40
|
+
proceed to implementation and run `npx -y gigaplan end <path-to-plan.md>`.
|
|
41
|
+
- Otherwise (`request changes`, or any unresolved comments even under
|
|
42
|
+
`approved`), revise the plan file **in place at the same path** —
|
|
43
|
+
address every comment, don't silently drop any — then go back to step 2.
|
|
44
|
+
Re-running `review` on the same path reopens the same browser tab rather
|
|
45
|
+
than opening a new one, and the tab live-reloads as soon as the file is
|
|
46
|
+
saved.
|
|
47
|
+
5. **Repeat** steps 2-4 until approved.
|
|
48
|
+
|
|
49
|
+
## Plan file conventions
|
|
50
|
+
|
|
51
|
+
gigaplan itself is path-agnostic — it takes whatever path is passed — but prefer
|
|
52
|
+
`.gigaplan/plans/<slug>.md` inside the target project, not some other
|
|
53
|
+
agent-internal plan/scratch file (an editor's own "plan mode" output, a
|
|
54
|
+
temp-file convention, etc.) that this skill shouldn't assume is active or
|
|
55
|
+
stable across a revise-and-reloop cycle.
|
|
56
|
+
Edit the **same file in place** across loop iterations — not `plan-v2.md`,
|
|
57
|
+
`plan-v3.md`, ... — since the review session is keyed by the file's path; a new
|
|
58
|
+
path means a new, unrelated session.
|
|
59
|
+
|
|
60
|
+
## Commands & rules
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
gigaplan review <path> Open (or reuse) the browser review session for this plan file.
|
|
64
|
+
Prints "Opened for review: <url>" on success.
|
|
65
|
+
|
|
66
|
+
gigaplan poll <path> Block until a review is submitted; print it as compact markdown:
|
|
67
|
+
|
|
68
|
+
# Review: <approved|request changes>
|
|
69
|
+
|
|
70
|
+
## Overall comment
|
|
71
|
+
<text, or "(none)">
|
|
72
|
+
|
|
73
|
+
## Comments
|
|
74
|
+
### On "<heading breadcrumb>"
|
|
75
|
+
<comment body>
|
|
76
|
+
[repeated per comment; the whole "## Comments" section is omitted if there are none]
|
|
77
|
+
|
|
78
|
+
gigaplan end <path> Mark the review session done. Does not stop the shared
|
|
79
|
+
local server (it shuts itself down after a period of
|
|
80
|
+
inactivity independent of any single session).
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
- All three commands take the plan file's path as their only argument; no other
|
|
84
|
+
flags are needed for the core loop.
|
|
85
|
+
- Every command runs via `npx -y gigaplan ...` — no global install required.
|
|
86
|
+
- If a comment is flagged as being on content that changed since it was written
|
|
87
|
+
(the plan was edited again before the comment was addressed), treat it as
|
|
88
|
+
still applying to the *current* version of that section unless the comment
|
|
89
|
+
itself is now clearly moot.
|
|
90
|
+
|
|
91
|
+
## What this is not
|
|
92
|
+
|
|
93
|
+
Not for trivial one-line changes, a plan that's already been approved, or
|
|
94
|
+
non-plan content (a diagram, a comparison table, a general HTML artifact).
|
|
95
|
+
gigaplan is a plan reviewer, not a general HTML artifact tool, a diagramming
|
|
96
|
+
tool, or a way to render arbitrary content in a browser — don't reach for it
|
|
97
|
+
just because it opens a browser tab.
|