@getpipher/workspace 0.3.0 → 0.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.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getpipher/workspace",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Workspace & context-management skills — repo catch-up, AGENTS.md initialization, ecosystem context-file architecture, doc organization, planning sync, and cross-session handoff. Host-neutral: any AGENTS.md-aware coding agent.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pi-package",
|
package/skills/catch-up/SKILL.md
CHANGED
|
@@ -11,6 +11,8 @@ Bismillah! Let me show you where we are and what we just did.
|
|
|
11
11
|
|
|
12
12
|
Let me gather complete context for you:
|
|
13
13
|
|
|
14
|
+
0. **Handoff check** — If `$HANDOFF_VAULT/{project}/` (`$HANDOFF_VAULT` defaults to `~/.local/handoffs`) contains session handoffs, surface the newest one (`ls "$HANDOFF_VAULT"/{project}/session-handoff-*.md | sort -r | head -1`) and offer to render its starter prompt before gathering git state.
|
|
15
|
+
|
|
14
16
|
1. **Extract Mission & Purpose**
|
|
15
17
|
- Read the project context file — `AGENTS.md` (or `CLAUDE.md`, CC's legacy name) — first, for Repository Overview and Tech Stack
|
|
16
18
|
- Fallback to README.md if no context file exists
|
|
@@ -18,7 +18,9 @@ Create a starter prompt file that a fresh session can use to continue work witho
|
|
|
18
18
|
|
|
19
19
|
## Output
|
|
20
20
|
|
|
21
|
-
Write to: `$HANDOFF_VAULT/{project}/session-handoff-{YYYY-MM-DD}.md` (default `$HANDOFF_VAULT`=`~/.local/handoffs`)
|
|
21
|
+
Write to: `$HANDOFF_VAULT/{project}/session-handoff-{YYYY-MM-DD}.md` (default `$HANDOFF_VAULT`=`~/.local/handoffs` — the canonical vault). `$HANDOFF_VAULT` is set machine-globally in the shell profile, never per-session. Durability/backup of the vault is an out-of-band concern (mirror/sync jobs) — never a reason to write elsewhere.
|
|
22
|
+
|
|
23
|
+
`{project}` = the working directory's repo/bucket folder name (for bug-bounty hunts: the per-target hunt folder name `<platform>-<program>`). Flat, single segment — never a nested path.
|
|
22
24
|
|
|
23
25
|
If a handoff file already exists for today, append a letter suffix (e.g., `-b`, `-c`).
|
|
24
26
|
|
|
@@ -43,7 +45,7 @@ A **progress table** sits near the top of the handoff (between the header block
|
|
|
43
45
|
|
|
44
46
|
**Generate a progress table when ANY apply:**
|
|
45
47
|
|
|
46
|
-
1. **Predecessor handoff has one** — `ls
|
|
48
|
+
1. **Predecessor handoff has one** — `ls "$HANDOFF_VAULT"/{project}/session-handoff-*.md | sort -r | head -1` contains `## Progress Table`. Chain consistency > per-session re-evaluation. (Reverse-lexicographic sort, not mtime — the `YYYY-MM-DD[-letter]` naming is lexicographically ordered; mtime lies on restore/copy/sync.)
|
|
47
49
|
2. **User explicitly requested** — prompt contains "MUST include progress table" or "include the progress table".
|
|
48
50
|
3. **Work has numbered discrete units** — multi-phase plan with slices/tasks (e.g., "Slice 5.7 done, next 5.8"), or stacked PR chain where order matters.
|
|
49
51
|
4. **More than 3 PRs/issues stacked across sessions** — flat bullet list becomes unscannable.
|
|
@@ -61,7 +63,7 @@ A **progress table** sits near the top of the handoff (between the header block
|
|
|
61
63
|
1. **Find the most recent predecessor handoff** for this project:
|
|
62
64
|
|
|
63
65
|
```bash
|
|
64
|
-
ls
|
|
66
|
+
ls "$HANDOFF_VAULT"/{project}/session-handoff-*.md 2>/dev/null | sort -r | head -1
|
|
65
67
|
```
|
|
66
68
|
|
|
67
69
|
Locate its `## Progress Table` section.
|
|
@@ -169,9 +171,22 @@ pbpaste # macOS — expected: the handoff path
|
|
|
169
171
|
|
|
170
172
|
If the clipboard tool isn't available (e.g., remote SSH session without clipboard forwarding), skip silently — don't treat it as an error. The Confirm step still shows the path as text.
|
|
171
173
|
|
|
172
|
-
### Step 6: Update
|
|
174
|
+
### Step 6: Update the project chain index
|
|
175
|
+
|
|
176
|
+
Maintain `$HANDOFF_VAULT/{project}/MEMORY.md` — the ONLY hand-maintained index:
|
|
177
|
+
|
|
178
|
+
```markdown
|
|
179
|
+
# {Project} — Handoff Chain Index
|
|
180
|
+
|
|
181
|
+
|Date|Handoff|State at handoff|
|
|
182
|
+
|---|---|---|
|
|
183
|
+
|{date}|{filename}|{one-line state}|
|
|
184
|
+
|
|
185
|
+
## Standing context
|
|
186
|
+
- {spec of record / conventions / frozen facts — items that outlive any single handoff}
|
|
187
|
+
```
|
|
173
188
|
|
|
174
|
-
Add
|
|
189
|
+
Add the new row at the bottom (newest last); update stale state lines while there. The global vault-level `MEMORY.md` (if present) is GENERATED by tooling — never hand-edit it.
|
|
175
190
|
|
|
176
191
|
### Step 7: Confirm
|
|
177
192
|
|
|
@@ -195,7 +210,7 @@ The new session performs the mirror action on arrival: the starter prompt (Step
|
|
|
195
210
|
- **No secrets in the prompt** — API keys, passwords, keypairs stay out
|
|
196
211
|
- **Specific over general** — "execute Task 3 in docs/plans/foo.md" beats "continue the work"
|
|
197
212
|
- **Include gotchas** — anything surprising or non-obvious that would trip up a fresh session
|
|
198
|
-
- **Private vault only** —
|
|
213
|
+
- **Private vault only** — the vault must be a private, local, strategy-safe location. `~/.local/handoffs` is the canonical home; durability is provided by an out-of-band mirror, not by writers choosing alternate locations.
|
|
199
214
|
- **Progress table is part of the chain contract** — once a chain starts using a progress table, every handoff in the chain MUST include + update it. Skipping breaks scannability for the next session and forces a rebuild from prior handoffs.
|
|
200
215
|
- **Progress table echo is the closer, not the full handoff** — Step 7's inline table is a snapshot for the current chat. The handoff file (`.md`) is the durable artifact. Don't paraphrase or trim the table when echoing — render it verbatim.
|
|
201
216
|
- **Opener-echo mirrors the closer** — when a progress table exists, the starter prompt's FIRST instruction MUST be "render the table before doing anything." Embed the table inside the starter-prompt block (Step 4), not as a file reference, so it survives the user pasting the prompt alone. The fresh session renders it as its first action — a "where we left off" snapshot symmetric to Step 7's "where we ended" closer. No table generated → no opener-echo.
|