create-egregore 0.19.3 → 0.19.6

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 (154) hide show
  1. package/assets/egregore-launcher.js +410 -26
  2. package/bin/cli.js +34 -20
  3. package/lib/local.js +84 -11
  4. package/lib/pi-runtime.js +186 -0
  5. package/lib/setup.js +56 -11
  6. package/lib/ui.js +1 -1
  7. package/package.json +8 -6
  8. package/runtime/codex/.codex/hooks/search-hint.js +65 -0
  9. package/runtime/codex/.codex/hooks.json +13 -0
  10. package/runtime/codex/.codex/skills/deep-reflect/SKILL.md +14 -10
  11. package/runtime/codex/.codex/skills/minion/SKILL.md +25 -0
  12. package/runtime/codex/.codex/skills/scroll/SKILL.md +168 -0
  13. package/runtime/codex/.codex/skills/scroll/agents/openai.yaml +4 -0
  14. package/runtime/codex/.codex/skills/scroll/assets/shell.html +542 -0
  15. package/runtime/codex/.codex/skills/search/SKILL.md +56 -0
  16. package/runtime/codex/.codex/skills/session-view/SKILL.md +25 -0
  17. package/runtime/codex/.codex/skills/thread/SKILL.md +25 -0
  18. package/runtime/codex/.codex/skills/view/SKILL.md +147 -32
  19. package/runtime/codex/.codex/skills/view/agents/openai.yaml +4 -0
  20. package/runtime/codex/.codex/skills/view/assets/compose-scaffold.html +221 -0
  21. package/runtime/codex/.codex/spec-manifest.json +4 -4
  22. package/runtime/codex/AGENTS.md +31 -5
  23. package/runtime/codex/bin/activity-data.sh +46 -4
  24. package/runtime/codex/bin/agent.sh +10 -2
  25. package/runtime/codex/bin/codex-install-skills.sh +1 -1
  26. package/runtime/codex/bin/codex-render-spec.mjs +24 -2
  27. package/runtime/codex/bin/codex-session-start.sh +6 -60
  28. package/runtime/codex/bin/codex-skill-render.mjs +20 -12
  29. package/runtime/codex/bin/codex-sync-skills.sh +4 -0
  30. package/runtime/codex/bin/graph-op.sh +56 -5
  31. package/runtime/codex/bin/graph.sh +36 -0
  32. package/runtime/codex/bin/handoff-run.sh +157 -7
  33. package/runtime/codex/bin/handoff-save-egregore.sh +6 -1
  34. package/runtime/codex/bin/index-handoff.sh +9 -3
  35. package/runtime/codex/bin/lib/context.sh +97 -18
  36. package/runtime/codex/bin/lib/dashboard-artifact.sh +1 -1
  37. package/runtime/codex/bin/lib/git-sync.sh +35 -9
  38. package/runtime/codex/bin/lib/greeting.sh +30 -104
  39. package/runtime/codex/bin/lib/metrics.sh +374 -0
  40. package/runtime/codex/bin/publish-artifact.sh +43 -1
  41. package/runtime/codex/bin/settings.sh +274 -0
  42. package/runtime/codex/manifest.json +18 -1
  43. package/runtime/pi/.codex/config.toml +15 -0
  44. package/runtime/pi/.codex/hooks/branch-guard.js +242 -0
  45. package/runtime/pi/.codex/hooks/search-hint.js +65 -0
  46. package/runtime/pi/.codex/hooks.json +30 -0
  47. package/runtime/pi/.codex/skills/activity/SKILL.md +70 -0
  48. package/runtime/pi/.codex/skills/add/SKILL.md +25 -0
  49. package/runtime/pi/.codex/skills/announce/SKILL.md +54 -0
  50. package/runtime/pi/.codex/skills/answer/SKILL.md +25 -0
  51. package/runtime/pi/.codex/skills/archive/SKILL.md +41 -0
  52. package/runtime/pi/.codex/skills/ask/SKILL.md +59 -0
  53. package/runtime/pi/.codex/skills/branch/SKILL.md +25 -0
  54. package/runtime/pi/.codex/skills/checkup/SKILL.md +41 -0
  55. package/runtime/pi/.codex/skills/commit/SKILL.md +25 -0
  56. package/runtime/pi/.codex/skills/contribute/SKILL.md +25 -0
  57. package/runtime/pi/.codex/skills/dark-mode/SKILL.md +25 -0
  58. package/runtime/pi/.codex/skills/dashboard/SKILL.md +59 -0
  59. package/runtime/pi/.codex/skills/deep-reflect/SKILL.md +74 -0
  60. package/runtime/pi/.codex/skills/delete-user/SKILL.md +25 -0
  61. package/runtime/pi/.codex/skills/egregore-voice/SKILL.md +25 -0
  62. package/runtime/pi/.codex/skills/emissary/SKILL.md +41 -0
  63. package/runtime/pi/.codex/skills/env/SKILL.md +25 -0
  64. package/runtime/pi/.codex/skills/handoff/SKILL.md +67 -0
  65. package/runtime/pi/.codex/skills/harvest/SKILL.md +107 -0
  66. package/runtime/pi/.codex/skills/ingest/SKILL.md +25 -0
  67. package/runtime/pi/.codex/skills/ingest-google/SKILL.md +25 -0
  68. package/runtime/pi/.codex/skills/ingest-user-interview/SKILL.md +41 -0
  69. package/runtime/pi/.codex/skills/invite/SKILL.md +40 -0
  70. package/runtime/pi/.codex/skills/issue/SKILL.md +41 -0
  71. package/runtime/pi/.codex/skills/me/SKILL.md +25 -0
  72. package/runtime/pi/.codex/skills/meeting/SKILL.md +41 -0
  73. package/runtime/pi/.codex/skills/minion/SKILL.md +25 -0
  74. package/runtime/pi/.codex/skills/note/SKILL.md +25 -0
  75. package/runtime/pi/.codex/skills/onboarding/SKILL.md +41 -0
  76. package/runtime/pi/.codex/skills/pr/SKILL.md +25 -0
  77. package/runtime/pi/.codex/skills/project/SKILL.md +41 -0
  78. package/runtime/pi/.codex/skills/pull/SKILL.md +25 -0
  79. package/runtime/pi/.codex/skills/push/SKILL.md +25 -0
  80. package/runtime/pi/.codex/skills/quest/SKILL.md +77 -0
  81. package/runtime/pi/.codex/skills/quest-suggest/SKILL.md +25 -0
  82. package/runtime/pi/.codex/skills/reflect/SKILL.md +41 -0
  83. package/runtime/pi/.codex/skills/review-pr/SKILL.md +41 -0
  84. package/runtime/pi/.codex/skills/save/SKILL.md +62 -0
  85. package/runtime/pi/.codex/skills/scroll/SKILL.md +168 -0
  86. package/runtime/pi/.codex/skills/scroll/agents/openai.yaml +4 -0
  87. package/runtime/pi/.codex/skills/scroll/assets/shell.html +542 -0
  88. package/runtime/pi/.codex/skills/search/SKILL.md +56 -0
  89. package/runtime/pi/.codex/skills/session-view/SKILL.md +25 -0
  90. package/runtime/pi/.codex/skills/setup/SKILL.md +25 -0
  91. package/runtime/pi/.codex/skills/summon/SKILL.md +41 -0
  92. package/runtime/pi/.codex/skills/sync-repos/SKILL.md +25 -0
  93. package/runtime/pi/.codex/skills/telegram-connect/SKILL.md +25 -0
  94. package/runtime/pi/.codex/skills/telemetry/SKILL.md +25 -0
  95. package/runtime/pi/.codex/skills/test/SKILL.md +41 -0
  96. package/runtime/pi/.codex/skills/the-spiral/SKILL.md +84 -0
  97. package/runtime/pi/.codex/skills/thread/SKILL.md +25 -0
  98. package/runtime/pi/.codex/skills/todo/SKILL.md +41 -0
  99. package/runtime/pi/.codex/skills/tui-design/SKILL.md +41 -0
  100. package/runtime/pi/.codex/skills/tutorial/SKILL.md +41 -0
  101. package/runtime/pi/.codex/skills/update/SKILL.md +25 -0
  102. package/runtime/pi/.codex/skills/view/SKILL.md +156 -0
  103. package/runtime/pi/.codex/skills/view/agents/openai.yaml +4 -0
  104. package/runtime/pi/.codex/skills/view/assets/compose-scaffold.html +221 -0
  105. package/runtime/pi/.codex/skills/visual-explain/SKILL.md +41 -0
  106. package/runtime/pi/.codex/skills/wrap/SKILL.md +55 -0
  107. package/runtime/pi/.codex/spec-manifest.json +114 -0
  108. package/runtime/pi/.pi/APPEND_SYSTEM.md +255 -0
  109. package/runtime/pi/.pi/extensions/egregore.ts +324 -0
  110. package/runtime/pi/.pi/settings.json +6 -0
  111. package/runtime/pi/.pi/spec-manifest.json +12 -0
  112. package/runtime/pi/AGENTS.md +350 -0
  113. package/runtime/pi/bin/activity-data.sh +242 -0
  114. package/runtime/pi/bin/agent.sh +677 -0
  115. package/runtime/pi/bin/codex-install-skills.sh +78 -0
  116. package/runtime/pi/bin/codex-render-spec.mjs +394 -0
  117. package/runtime/pi/bin/codex-session-start.sh +188 -0
  118. package/runtime/pi/bin/codex-skill-render.mjs +323 -0
  119. package/runtime/pi/bin/codex-sync-skills.sh +227 -0
  120. package/runtime/pi/bin/dashboard-data.sh +178 -0
  121. package/runtime/pi/bin/graph-batch.sh +60 -0
  122. package/runtime/pi/bin/graph-op.sh +431 -0
  123. package/runtime/pi/bin/graph-wal.sh +228 -0
  124. package/runtime/pi/bin/graph.sh +177 -0
  125. package/runtime/pi/bin/handoff-pr-backfill.sh +86 -0
  126. package/runtime/pi/bin/handoff-run.sh +581 -0
  127. package/runtime/pi/bin/handoff-save-egregore.sh +136 -0
  128. package/runtime/pi/bin/index-handoff.sh +312 -0
  129. package/runtime/pi/bin/lib/artifact-id.sh +46 -0
  130. package/runtime/pi/bin/lib/config.sh +71 -0
  131. package/runtime/pi/bin/lib/context.sh +542 -0
  132. package/runtime/pi/bin/lib/dashboard-artifact.sh +142 -0
  133. package/runtime/pi/bin/lib/ensure-develop.sh +183 -0
  134. package/runtime/pi/bin/lib/git-sync.sh +288 -0
  135. package/runtime/pi/bin/lib/greeting.sh +340 -0
  136. package/runtime/pi/bin/lib/hash.sh +13 -0
  137. package/runtime/pi/bin/lib/identity.sh +174 -0
  138. package/runtime/pi/bin/lib/metrics.sh +374 -0
  139. package/runtime/pi/bin/lib/permissions.sh +106 -0
  140. package/runtime/pi/bin/lib/time.sh +56 -0
  141. package/runtime/pi/bin/lib/worktree-links.sh +54 -0
  142. package/runtime/pi/bin/notify.sh +207 -0
  143. package/runtime/pi/bin/pi-branch-policy.mjs +15 -0
  144. package/runtime/pi/bin/pi-product-workflows.mjs +324 -0
  145. package/runtime/pi/bin/pi-render-spec.mjs +114 -0
  146. package/runtime/pi/bin/pi-session-start.sh +24 -0
  147. package/runtime/pi/bin/publish-artifact.sh +201 -0
  148. package/runtime/pi/bin/publish-references.sh +144 -0
  149. package/runtime/pi/bin/repo-state.sh +99 -0
  150. package/runtime/pi/bin/telemetry.sh +391 -0
  151. package/runtime/pi/bin/worktree-create.sh +118 -0
  152. package/runtime/pi/bin/worktree-remove.sh +50 -0
  153. package/runtime/pi/bin/worktree.sh +198 -0
  154. package/runtime/pi/manifest.json +176 -0
@@ -0,0 +1,65 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ // search-hint.js — UserPromptSubmit hook (Codex runtime).
4
+ //
5
+ // Mirror of .claude/hooks/search-hint.sh: when the user's prompt is
6
+ // recall-shaped ("find the handoff about…", "did we decide…"), inject a
7
+ // routing hint toward `bin/agent.sh search` — one ranked call over
8
+ // memory/ — instead of improvised ls/grep/graph exploration.
9
+ //
10
+ // Advisory only, never blocks, rate-limited once per session, exits 0.
11
+ // If the Codex runtime does not fire UserPromptSubmit, this file is inert.
12
+
13
+ const fs = require("node:fs");
14
+ const path = require("node:path");
15
+ const os = require("node:os");
16
+
17
+ function readStdin() {
18
+ try { return fs.readFileSync(0, "utf-8"); } catch { return ""; }
19
+ }
20
+ function parseJson(raw) {
21
+ try { return JSON.parse(raw || "{}"); } catch { return {}; }
22
+ }
23
+
24
+ const input = parseJson(readStdin());
25
+ const prompt = String(input.prompt || input.user_prompt || "");
26
+ if (!prompt) process.exit(0);
27
+
28
+ const root = process.env.CLAUDE_PROJECT_DIR || process.cwd();
29
+ if (!fs.existsSync(path.join(root, "bin", "search.sh"))) process.exit(0);
30
+
31
+ // Already oriented toward search.
32
+ if (/(\/search\b|search\.sh|\bsearch (the )?memory\b)/i.test(prompt)) process.exit(0);
33
+
34
+ const RECALL = new RegExp(
35
+ [
36
+ "\\b(find|locate|dig up|look up|pull up)\\b.*\\b(handoff|decision|notes?|docs?|meeting|harvest|quest|reflection)s?\\b",
37
+ "\\bdid we (decide|discuss|agree|say|talk about|cover)\\b",
38
+ "\\bdo we have (any )?(notes?|docs?|anything|something)( on| about)?\\b",
39
+ "\\bwhat did we (decide|say|agree|discuss)\\b",
40
+ "\\bhave we (discussed|decided|covered|talked about|looked at)\\b",
41
+ "\\bnotes on\\b",
42
+ "\\bhandoff (from|about)\\b",
43
+ "\\bwho worked on\\b",
44
+ "\\bdidn.?t (someone|we) already\\b",
45
+ "\\bwas there (a|any) (handoff|decision|discussion|meeting)\\b",
46
+ ].join("|"),
47
+ "i"
48
+ );
49
+ if (!RECALL.test(prompt)) process.exit(0);
50
+
51
+ // Rate-limit once per session.
52
+ let sid = "default";
53
+ try { sid = fs.readFileSync(path.join(root, ".egregore-session-id"), "utf-8").trim() || "default"; } catch {}
54
+ const flag = path.join(os.tmpdir(), `egregore-search-hint-${sid}`);
55
+ if (fs.existsSync(flag)) process.exit(0);
56
+ try { fs.writeFileSync(flag, "1"); } catch {}
57
+
58
+ process.stdout.write(JSON.stringify({
59
+ hookSpecificOutput: {
60
+ hookEventName: "UserPromptSubmit",
61
+ additionalContext:
62
+ "Routing hint: this prompt asks for recall from org memory. FIRST action: `bin/agent.sh search \"<the concept, not the literal sentence>\"` — one ranked call over all of memory/ (hybrid keyword+semantic; graph-state annotations attach automatically in connected mode). Read the top hits and cite paths. Do NOT improvise ls/grep/graph exploration first — hand-written graph queries against invented labels (e.g. :Handoff — handoffs are :Session nodes) return empty. Full spec: the search skill.",
63
+ },
64
+ }) + "\n");
65
+ process.exit(0);
@@ -0,0 +1,30 @@
1
+ {
2
+ "hooks": {
3
+ "UserPromptSubmit": [
4
+ {
5
+ "matcher": "",
6
+ "hooks": [
7
+ {
8
+ "type": "command",
9
+ "command": "node \"$(git rev-parse --show-toplevel)/.codex/hooks/search-hint.js\"",
10
+ "timeout": 5,
11
+ "statusMessage": "Checking recall routing"
12
+ }
13
+ ]
14
+ }
15
+ ],
16
+ "PreToolUse": [
17
+ {
18
+ "matcher": "Bash|apply_patch|Edit|Write",
19
+ "hooks": [
20
+ {
21
+ "type": "command",
22
+ "command": "node \"$(git rev-parse --show-toplevel)/.codex/hooks/branch-guard.js\"",
23
+ "timeout": 5,
24
+ "statusMessage": "Checking Egregore branch policy"
25
+ }
26
+ ]
27
+ }
28
+ ]
29
+ }
30
+ }
@@ -0,0 +1,70 @@
1
+ ---
2
+ name: activity
3
+ description: Show Egregore team activity, pending handoffs, and open questions when the user invokes /activity or $activity, or asks what is happening in an Egregore checkout.
4
+ ---
5
+
6
+ # Egregore Activity
7
+
8
+ Native Codex Egregore skill. Use this only inside an Egregore checkout.
9
+
10
+ Show the live team activity view without sending the user through Claude Code.
11
+ The graph API is useful when reachable, but the filesystem and memory repo must
12
+ remain enough to render a useful answer.
13
+
14
+ ## Flow
15
+
16
+ 1. Verify `bin/agent.sh` exists. If it does not, say this is not an Egregore
17
+ checkout.
18
+ 2. Run `bin/agent.sh sync`.
19
+ 3. Resolve the requested handle:
20
+ - If the user named a person, match it against `memory/people/*.md`.
21
+ - Otherwise use `.egregore-state.json` `github_username`, then git user
22
+ fallback.
23
+ 4. Run `bash bin/activity-data.sh [handle]` with network escalation and capture
24
+ stdout as JSON. This command performs the graph API call internally; a
25
+ normal sandboxed Codex shell can make a healthy graph look unreachable.
26
+ 5. Classify the graph status:
27
+
28
+ ```bash
29
+ node bin/codex-skill-render.mjs classify-graph --mode connected
30
+ ```
31
+
32
+ If the network-enabled command still returns `retry` because `graph_reason` is
33
+ `unreachable`, render the filesystem fallback and mention that the graph service
34
+ was unreachable after a network-enabled attempt. If network escalation is denied
35
+ or unavailable, run the command without escalation, render the fallback, and
36
+ say Codex graph network access was not granted; do not claim the graph itself
37
+ was unreachable. Do not retry for `missing_config`, `auth_error`, or
38
+ `server_error`; render the clear reason instead.
39
+
40
+ 6. Render the card with:
41
+
42
+ ```bash
43
+ node bin/codex-skill-render.mjs activity-card <json-file>
44
+ ```
45
+
46
+ Paste the rendered card exactly in the visible response, preferably in a
47
+ `text` fenced block. Do not paraphrase the card into bullets unless the user
48
+ asks for a summary.
49
+
50
+ 7. Offer one compact focus prompt:
51
+ - `Handoffs` - open pending handoffs.
52
+ - `Questions` - answer or inspect pending questions.
53
+ - `Recent work` - inspect sessions and wraps.
54
+ - `Dashboard` - switch to the personal dashboard.
55
+ - `Done` - stop.
56
+
57
+ Use structured Codex question tooling when it is available. Otherwise render a
58
+ numbered list plus `Other:` and wait for the user.
59
+
60
+ ## Rules
61
+
62
+ - Never show raw JSON.
63
+ - Do not narrate each command step unless something blocks the workflow; the
64
+ final visible response should lead with the rendered card.
65
+ - Structured UX parity is required: preserve the rendered activity TUI card,
66
+ no preamble, no prose-only replacement, and no raw collector output.
67
+ - Do not call `egregore-handoff`.
68
+ - Do not use Claude Code commands.
69
+ - Keep graph, pull request, and publish data best-effort; local memory remains
70
+ the source of truth when connected services are down.
@@ -0,0 +1,25 @@
1
+ ---
2
+ name: add
3
+ description: 'Fallback Codex adapter for the Egregore add workflow.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore add Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ 1. Read `.claude/skills/add/SKILL.md` for the workflow details.
19
+ 2. Run the referenced `bin/` scripts directly from Codex.
20
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
21
+ explicitly says they are required.
22
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
23
+ calls when `egregore.json` declares `"mode": "local"`.
24
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
25
+ handoffs.
@@ -0,0 +1,54 @@
1
+ ---
2
+ name: announce
3
+ description: Draft, confirm, and send an Egregore group announcement from Codex when the user invokes /announce or $announce.
4
+ ---
5
+
6
+ # Egregore Announce
7
+
8
+ Native Codex Egregore skill. Use this to send concise team announcements
9
+ through the existing Egregore notification path.
10
+
11
+ ## Flow
12
+
13
+ 1. Draft a message from the user request and current context. Keep it under
14
+ 500 characters unless the user provided exact text.
15
+ 2. If the announcement references a memory artifact, publish it first and add
16
+ the returned URL only when publication succeeds:
17
+
18
+ ```bash
19
+ bash bin/publish-artifact.sh document "$FILE_PATH" --title "$TITLE" --author "$AUTHOR" --description "$DESCRIPTION"
20
+ ```
21
+
22
+ Use `handoff`, `quest`, or `document` as the artifact type when appropriate.
23
+ Never fabricate a URL.
24
+
25
+ 3. Preview the exact message. Confirm with structured Codex question tooling
26
+ when available; otherwise render:
27
+
28
+ ```text
29
+ Send this announcement?
30
+ 1. Send
31
+ 2. Edit
32
+ Other:
33
+ ```
34
+
35
+ 4. If the user edits, redraft and preview again. If they approve, run:
36
+
37
+ ```bash
38
+ bash bin/notify.sh group "$MESSAGE"
39
+ ```
40
+
41
+ 5. Emit telemetry in the background:
42
+
43
+ ```bash
44
+ bash bin/telemetry.sh emit "command" '{"command":"announce"}' >/dev/null 2>&1 &
45
+ ```
46
+
47
+ 6. Confirm whether the group send succeeded.
48
+
49
+ ## Rules
50
+
51
+ - Always preview before sending.
52
+ - Do not expose notification credentials.
53
+ - Use `bin/notify.sh`; do not call Telegram directly.
54
+ - Do not use Claude Code commands.
@@ -0,0 +1,25 @@
1
+ ---
2
+ name: answer
3
+ description: 'Fallback Codex adapter for the Egregore answer workflow.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore answer Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ 1. Read `.claude/skills/answer/SKILL.md` for the workflow details.
19
+ 2. Run the referenced `bin/` scripts directly from Codex.
20
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
21
+ explicitly says they are required.
22
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
23
+ calls when `egregore.json` declares `"mode": "local"`.
24
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
25
+ handoffs.
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: archive
3
+ description: 'Fallback Codex adapter for the Egregore archive workflow.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore archive Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ ## Structured UX parity
19
+
20
+ This workflow has a Claude skill with user-visible structured output. After
21
+ reading `.claude/skills/archive/SKILL.md`, reproduce the same visible UX in Codex:
22
+
23
+ - Preserve TUI boxes, markdown tables, rich cards, browser artifact rendering,
24
+ exact confirmation blocks, and "no preamble" rules from the source skill.
25
+ - Use the source skill's frame width, section order, labels, status footer,
26
+ and examples as the contract for the final response.
27
+ - Never replace a required box/table/card/artifact view with a prose summary
28
+ unless the user explicitly asks for a summary.
29
+ - When the source says to output a TUI box directly, paste that box as the
30
+ visible response, preferably in a `text` fenced block.
31
+ - Never show raw JSON, raw command output, or unformatted script output when
32
+ the source skill requires formatted status or rendered output.
33
+
34
+ 1. Read `.claude/skills/archive/SKILL.md` for the workflow details.
35
+ 2. Run the referenced `bin/` scripts directly from Codex.
36
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
37
+ explicitly says they are required.
38
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
39
+ calls when `egregore.json` declares `"mode": "local"`.
40
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
41
+ handoffs.
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: ask
3
+ description: Ask an asynchronous Egregore question to a teammate when the user invokes /ask or $ask, or help the current user formulate inward reflection questions.
4
+ ---
5
+
6
+ # Egregore Ask
7
+
8
+ Native Codex Egregore skill. Use this when the user wants to ask a teammate a
9
+ question, run a topic by someone, or inspect pending questions for themselves.
10
+
11
+ ## Flow
12
+
13
+ 1. Run `bin/agent.sh sync`.
14
+ 2. Resolve the current author from `.egregore-state.json`, then git config.
15
+ 3. Load people from `memory/people/*.md`. Match target names against filename,
16
+ `name:`, `github:`, and heading text, case-insensitively. Strip leading `@`.
17
+ 4. If the user named a target, draft one to four concrete questions. In
18
+ connected mode, optionally gather context with `bin/graph.sh` queries, but
19
+ suppress raw JSON and continue from memory files if graph access fails.
20
+ 5. Preview the exact questions and target. Use structured Codex question
21
+ tooling when available; otherwise render:
22
+
23
+ ```text
24
+ Send these questions?
25
+ 1. Send as-is
26
+ 2. Edit
27
+ Other:
28
+ ```
29
+
30
+ 6. For each approved question, run:
31
+
32
+ ```bash
33
+ bin/agent.sh ask --from "$AUTHOR" --to "$TARGET" --topic "$TOPIC" --question "$QUESTION"
34
+ ```
35
+
36
+ Add harvest flags only when this ask is part of a harvest:
37
+ `--harvest-id`, `--harvest-session-id`, `--turn`, `--question-intent`, and
38
+ `--context-mode`.
39
+
40
+ 7. In connected mode, notify best-effort with:
41
+
42
+ ```bash
43
+ bash bin/notify.sh send "$TARGET" "$AUTHOR has a question about \"$TOPIC\". Ask for \$activity to answer."
44
+ ```
45
+
46
+ 8. Report the created `memory/knowledge/questions/...` path.
47
+
48
+ ## Inward Mode
49
+
50
+ If no target matches, do not create a question file. Generate a small set of
51
+ questions for the user to answer in-session, grounded in current conversation
52
+ and memory context. Offer to save the result as a reflection only after the user
53
+ answers.
54
+
55
+ ## Rules
56
+
57
+ - Person-targeted asks are asynchronous: store, optionally notify, then stop.
58
+ - Local mode is filesystem-only; skip graph and notification calls.
59
+ - Do not use Claude Code commands.
@@ -0,0 +1,25 @@
1
+ ---
2
+ name: branch
3
+ description: 'Fallback Codex adapter for the Egregore branch workflow.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore branch Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ 1. Read `.claude/skills/branch/SKILL.md` for the workflow details.
19
+ 2. Run the referenced `bin/` scripts directly from Codex.
20
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
21
+ explicitly says they are required.
22
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
23
+ calls when `egregore.json` declares `"mode": "local"`.
24
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
25
+ handoffs.
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: checkup
3
+ description: 'Fallback Codex adapter for the Egregore checkup workflow.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore checkup Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ ## Structured UX parity
19
+
20
+ This workflow has a Claude skill with user-visible structured output. After
21
+ reading `.claude/skills/checkup/SKILL.md`, reproduce the same visible UX in Codex:
22
+
23
+ - Preserve TUI boxes, markdown tables, rich cards, browser artifact rendering,
24
+ exact confirmation blocks, and "no preamble" rules from the source skill.
25
+ - Use the source skill's frame width, section order, labels, status footer,
26
+ and examples as the contract for the final response.
27
+ - Never replace a required box/table/card/artifact view with a prose summary
28
+ unless the user explicitly asks for a summary.
29
+ - When the source says to output a TUI box directly, paste that box as the
30
+ visible response, preferably in a `text` fenced block.
31
+ - Never show raw JSON, raw command output, or unformatted script output when
32
+ the source skill requires formatted status or rendered output.
33
+
34
+ 1. Read `.claude/skills/checkup/SKILL.md` for the workflow details.
35
+ 2. Run the referenced `bin/` scripts directly from Codex.
36
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
37
+ explicitly says they are required.
38
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
39
+ calls when `egregore.json` declares `"mode": "local"`.
40
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
41
+ handoffs.
@@ -0,0 +1,25 @@
1
+ ---
2
+ name: commit
3
+ description: 'Fallback Codex adapter for the Egregore commit workflow.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore commit Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ 1. Read `.claude/skills/commit/SKILL.md` for the workflow details.
19
+ 2. Run the referenced `bin/` scripts directly from Codex.
20
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
21
+ explicitly says they are required.
22
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
23
+ calls when `egregore.json` declares `"mode": "local"`.
24
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
25
+ handoffs.
@@ -0,0 +1,25 @@
1
+ ---
2
+ name: contribute
3
+ description: 'Fallback Codex adapter for the Egregore contribute workflow.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore contribute Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ 1. Read `.claude/skills/contribute/SKILL.md` for the workflow details.
19
+ 2. Run the referenced `bin/` scripts directly from Codex.
20
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
21
+ explicitly says they are required.
22
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
23
+ calls when `egregore.json` declares `"mode": "local"`.
24
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
25
+ handoffs.
@@ -0,0 +1,25 @@
1
+ ---
2
+ name: dark-mode
3
+ description: 'Use when generating or modifying any visual output that renders in a browser or artifact viewer: HTML pages, CSS, React SSR components, Egregore artifacts, markdown renderers, web components, design-system tokens, Tailwind themes, or standalone demos. Triggers on requests involving dark mode, theme toggles, color systems, card surfaces, browser rendering, or visual polish. The load-bearing lesson: if React SSR emits an inline hex color through `style={}`, CSS dark-mode overrides cannot reach it, so every theme-sensitive color must be emitted as `var(--token)` rather than a resolved hex. Do not use for TUI output, plain markdown files, or non-visual code.'
4
+ ---
5
+
6
+ <!-- generated-by: bin/codex-sync-skills.sh -->
7
+
8
+ # Egregore dark-mode Adapter
9
+
10
+ This is fallback coverage for a long-tail Egregore workflow that has not been
11
+ ported to a hand-written Codex-native skill yet.
12
+
13
+ Use the project shell and filesystem directly. Do not invoke Claude Code
14
+ commands. Translate interactive choices to structured Codex question tooling
15
+ when it is available; otherwise render compact numbered choices with an
16
+ `Other:` option and wait for the user.
17
+
18
+ 1. Read `.claude/skills/dark-mode/SKILL.md` for the workflow details.
19
+ 2. Run the referenced `bin/` scripts directly from Codex.
20
+ 3. Treat graph, publish, and notify steps as best-effort unless that workflow
21
+ explicitly says they are required.
22
+ 4. Keep local-mode behavior filesystem-first and avoid graph or notification
23
+ calls when `egregore.json` declares `"mode": "local"`.
24
+ 5. Never call the deprecated `egregore-handoff` CLI for Egregore project
25
+ handoffs.
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: dashboard
3
+ description: Show the current user's Egregore dashboard, recent sessions, open threads, and current work from Codex when the user invokes /dashboard or $dashboard, or asks for their dashboard.
4
+ ---
5
+
6
+ # Egregore Dashboard
7
+
8
+ Native Codex Egregore skill. Render the personal dashboard immediately from
9
+ `bin/dashboard-data.sh` and the shared renderer.
10
+
11
+ ## Flow
12
+
13
+ 1. Map user range words to ISO-ish ranges:
14
+ - empty or `week` -> `P7D`
15
+ - `today` -> `P1D`
16
+ - `month` -> `P30D`
17
+ - `all` -> `P365D`
18
+ 2. Run `bash bin/dashboard-data.sh "" "$TIME_RANGE"` with network escalation
19
+ and capture stdout as JSON. This command performs the graph API call
20
+ internally; a normal sandboxed Codex shell can make a healthy graph look
21
+ unreachable.
22
+ 3. Classify graph status:
23
+
24
+ ```bash
25
+ node bin/codex-skill-render.mjs classify-graph --mode connected
26
+ ```
27
+
28
+ If the network-enabled command still returns `retry` because the reason is
29
+ `unreachable`, render the filesystem fallback and mention that the graph service
30
+ was unreachable after a network-enabled attempt. If network escalation is denied
31
+ or unavailable, run the command without escalation, render the fallback, and
32
+ say Codex graph network access was not granted; do not claim the graph itself
33
+ was unreachable.
34
+
35
+ 4. Render:
36
+
37
+ ```bash
38
+ node bin/codex-skill-render.mjs dashboard-card <json-file>
39
+ ```
40
+
41
+ Paste the rendered card exactly in the visible response, preferably in a
42
+ `text` fenced block. Do not paraphrase the card into bullets unless the user
43
+ asks for a summary.
44
+
45
+ 5. End with a compact next-action prompt. Use structured Codex question
46
+ tooling when available; otherwise render numbered choices plus `Other:`.
47
+
48
+ ## Rules
49
+
50
+ - Never show raw JSON.
51
+ - Do not narrate each command step unless something blocks the workflow; the
52
+ final visible response should lead with the rendered card.
53
+ - Structured UX parity is required: preserve the rendered dashboard TUI card,
54
+ no preamble, no prose-only replacement, and no raw collector output.
55
+ - Do not call `bin/graph.sh` directly; `bin/dashboard-data.sh` is the data
56
+ boundary.
57
+ - In local mode, do not mention graph setup; memory files are the source of
58
+ truth.
59
+ - Do not use Claude Code commands.
@@ -0,0 +1,74 @@
1
+ ---
2
+ name: deep-reflect
3
+ description: Cross-reference an insight against the Egregore knowledge base using Codex-native staged analysis when the user invokes /deep-reflect or $deep-reflect.
4
+ ---
5
+
6
+ # Egregore Deep Reflect
7
+
8
+ Native Codex Egregore skill. Use this for evidence-based analysis of how a new
9
+ insight relates to the existing knowledge base.
10
+
11
+ ## Modes
12
+
13
+ - empty request: deep mode.
14
+ - `focused ...`: focused topic mode.
15
+ - `quick ...` or `category: content`: quick mode.
16
+
17
+ Detect directed questions when the user asks how, why, what something means, or
18
+ about a relationship. Preserve the user's lens while still surfacing important
19
+ signals outside the lens.
20
+
21
+ ## Flow
22
+
23
+ 1. Check `egregore.json` mode first. In local mode, do a lightweight reflection
24
+ from memory files and do not call graph, batch graph, or notification
25
+ scripts.
26
+ 2. In all modes, run `bin/agent.sh search "$TOPIC" -n 6` — hybrid content
27
+ recall over the whole memory repo. Feed strong hits into the candidate
28
+ set; in local mode this is the primary context source.
29
+ 3. In connected mode, additionally gather graph context with `bin/graph.sh`
30
+ and suppress raw JSON. Query recent sessions, active quests, recent
31
+ artifacts, decisions, the topic landscape, and the full artifact
32
+ landscape.
33
+ 4. If the graph is unavailable or has fewer than about ten artifacts, fall back
34
+ to lightweight reflection and say why in one line.
35
+ 5. Select candidate artifacts. Prefer title, type, topics, quest, author, and
36
+ date metadata first; fetch file contents only for the selected subset.
37
+ 6. Use Codex multi-agent or subagent tooling only if it is available in the
38
+ current session. If not, run a single-model staged analysis:
39
+ - candidate selection summary
40
+ - evidence extraction summary
41
+ - signal analysis
42
+ - final synthesis
43
+ 7. Classify signals as tension, convergence, gap, dependency, phase shift,
44
+ redundancy, emergence, reinforcement, or a named custom type.
45
+ 8. Write a markdown artifact under `memory/knowledge/deep-reflect/` with
46
+ frontmatter for run id, mode, lens, author, created time, and selected
47
+ evidence paths.
48
+ 9. In connected mode, write best-effort graph edges with `bin/graph.sh` or
49
+ `bin/graph-batch.sh`. Use `TENSION_WITH` for conflict signals and
50
+ `RELATES_TO` for other signals.
51
+ 10. Save memory and repo changes with `bin/agent.sh save --message "Deep reflect: $TOPIC" --topic "$TOPIC"`.
52
+
53
+ ## Output
54
+
55
+ Lead with the strongest finding, then list primary signals, evidence paths, and
56
+ recommended next action. Keep secondary and ambient signals short.
57
+
58
+ Structured UX parity is required. Then render the Egregore deep-reflect
59
+ confirmation TUI:
60
+
61
+ - Use a 72-column outer box with standard top/separator/content/bottom lines.
62
+ - Header: `DEEP REFLECT`, author, and date.
63
+ - Body: lens/topic, strongest finding, signal counts by type, selected evidence
64
+ count, artifact path, and recommended next action.
65
+ - Footer: saved/pushed state. In connected mode include graph-link state when
66
+ available; in local mode omit graph language.
67
+ - Do not show raw graph JSON or replace the confirmation box with plain prose.
68
+
69
+ ## Rules
70
+
71
+ - Never show raw graph JSON.
72
+ - Do not claim evidence you did not inspect.
73
+ - Keep intermediate summaries explicit so the user can audit the reasoning.
74
+ - Do not use Claude Code commands.