claudius-core 0.9.5 → 0.10.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/.claude/agents/developer.md +4 -2
- package/.claude/agents/manager.md +5 -5
- package/.claude/agents/pulsar.md +4 -4
- package/.claude/agents/worker.md +26 -6
- package/.claude/hooks/guardian.ts +11 -0
- package/.claude/hooks/session-context.ts +29 -3
- package/.claude-plugin/marketplace.json +2 -2
- package/.claudius/jobs/qualify-ideas.md +1 -0
- package/dist/daemon/index.d.ts +1 -1
- package/dist/daemon/index.d.ts.map +1 -1
- package/dist/daemon/index.js +1 -1
- package/dist/daemon/index.js.map +1 -1
- package/dist/daemon/scheduler.d.ts +12 -0
- package/dist/daemon/scheduler.d.ts.map +1 -1
- package/dist/daemon/scheduler.js +63 -1
- package/dist/daemon/scheduler.js.map +1 -1
- package/dist/index.js +20 -3
- package/dist/index.js.map +1 -1
- package/dist/studio/assets/{_basePickBy-BPyGSyjX.js → _basePickBy-DonAw8-R.js} +1 -1
- package/dist/studio/assets/{_baseUniq-COXavBWr.js → _baseUniq-Bi_WP1zn.js} +1 -1
- package/dist/studio/assets/{arc-C6u7rWiy.js → arc-FYVFmhzB.js} +1 -1
- package/dist/studio/assets/{architectureDiagram-VXUJARFQ-CdgRZem0.js → architectureDiagram-VXUJARFQ-B7asu6gl.js} +1 -1
- package/dist/studio/assets/{blockDiagram-VD42YOAC-Dzy--0Bk.js → blockDiagram-VD42YOAC-gqnWz43R.js} +1 -1
- package/dist/studio/assets/{c4Diagram-YG6GDRKO-CymHroyB.js → c4Diagram-YG6GDRKO-t7LZQBtM.js} +1 -1
- package/dist/studio/assets/channel-BFZD4WJ5.js +1 -0
- package/dist/studio/assets/{chunk-4BX2VUAB-DNgeunAs.js → chunk-4BX2VUAB-Db974K_s.js} +1 -1
- package/dist/studio/assets/{chunk-55IACEB6-B9L9utip.js → chunk-55IACEB6-x8AkfbC4.js} +1 -1
- package/dist/studio/assets/{chunk-B4BG7PRW-mYytHwg8.js → chunk-B4BG7PRW-ezwMkHBK.js} +1 -1
- package/dist/studio/assets/{chunk-DI55MBZ5-B_htrqq2.js → chunk-DI55MBZ5-Cw_rLFro.js} +1 -1
- package/dist/studio/assets/{chunk-FMBD7UC4-De68-v5Z.js → chunk-FMBD7UC4-BLzJ5ZC0.js} +1 -1
- package/dist/studio/assets/{chunk-QN33PNHL-BDHmOaWb.js → chunk-QN33PNHL-DYeeH9bP.js} +1 -1
- package/dist/studio/assets/{chunk-QZHKN3VN-CI4b_NjC.js → chunk-QZHKN3VN-CkH4KcTb.js} +1 -1
- package/dist/studio/assets/{chunk-TZMSLE5B-eE5xjTIx.js → chunk-TZMSLE5B-CAfFezKe.js} +1 -1
- package/dist/studio/assets/classDiagram-2ON5EDUG-CTwlV7eB.js +1 -0
- package/dist/studio/assets/classDiagram-v2-WZHVMYZB-CTwlV7eB.js +1 -0
- package/dist/studio/assets/clone-DmG8IwFK.js +1 -0
- package/dist/studio/assets/{cose-bilkent-S5V4N54A-CliUCU0O.js → cose-bilkent-S5V4N54A-ViVM5QX1.js} +1 -1
- package/dist/studio/assets/{dagre-6UL2VRFP-Euc9DolX.js → dagre-6UL2VRFP-CBXgH6rV.js} +1 -1
- package/dist/studio/assets/{diagram-PSM6KHXK-wFCVz4Gf.js → diagram-PSM6KHXK-BZuHkg1O.js} +1 -1
- package/dist/studio/assets/{diagram-QEK2KX5R-DW3TEVRg.js → diagram-QEK2KX5R-DoU0pFIA.js} +1 -1
- package/dist/studio/assets/{diagram-S2PKOQOG-sRtmdfLP.js → diagram-S2PKOQOG-BPAI4CZp.js} +1 -1
- package/dist/studio/assets/{erDiagram-Q2GNP2WA-DhFEzcCs.js → erDiagram-Q2GNP2WA-DQKrSu5y.js} +1 -1
- package/dist/studio/assets/{flowDiagram-NV44I4VS-DkGukznd.js → flowDiagram-NV44I4VS-BncC8LM4.js} +1 -1
- package/dist/studio/assets/{ganttDiagram-JELNMOA3-DWK7W0Dy.js → ganttDiagram-JELNMOA3-khO1_m4n.js} +1 -1
- package/dist/studio/assets/{gitGraphDiagram-V2S2FVAM-BOCSCk6Z.js → gitGraphDiagram-V2S2FVAM-DzAVvAKs.js} +1 -1
- package/dist/studio/assets/{graph-BZL6SCOn.js → graph-uOgF9t5h.js} +1 -1
- package/dist/studio/assets/{index-DheMq1DW.js → index-Cy0yzlHH.js} +2 -2
- package/dist/studio/assets/{infoDiagram-HS3SLOUP-DgPXbZVx.js → infoDiagram-HS3SLOUP-BSUUVG2P.js} +1 -1
- package/dist/studio/assets/{journeyDiagram-XKPGCS4Q-6xUT6AF4.js → journeyDiagram-XKPGCS4Q-BF8zx5D_.js} +1 -1
- package/dist/studio/assets/{kanban-definition-3W4ZIXB7-Dsvw_JdF.js → kanban-definition-3W4ZIXB7-BJHBNzap.js} +1 -1
- package/dist/studio/assets/{layout-DwiaZVEi.js → layout-raiBLbUv.js} +1 -1
- package/dist/studio/assets/{linear-B7fbgRMt.js → linear-x8T2Ab7p.js} +1 -1
- package/dist/studio/assets/{mermaid.core-wwLvzRgL.js → mermaid.core-UlRXHmPF.js} +4 -4
- package/dist/studio/assets/{mindmap-definition-VGOIOE7T-BIvanpwK.js → mindmap-definition-VGOIOE7T-SZmDNOMP.js} +1 -1
- package/dist/studio/assets/{pieDiagram-ADFJNKIX-83imZrxP.js → pieDiagram-ADFJNKIX-D_5as9gE.js} +1 -1
- package/dist/studio/assets/{quadrantDiagram-AYHSOK5B-DHQawHwC.js → quadrantDiagram-AYHSOK5B-C350isMT.js} +1 -1
- package/dist/studio/assets/{requirementDiagram-UZGBJVZJ-CJ8omiFk.js → requirementDiagram-UZGBJVZJ-D2PrrdYG.js} +1 -1
- package/dist/studio/assets/{sankeyDiagram-TZEHDZUN-DaO3BTC3.js → sankeyDiagram-TZEHDZUN-D9-Y4eLu.js} +1 -1
- package/dist/studio/assets/{sequenceDiagram-WL72ISMW-BaOOCdTf.js → sequenceDiagram-WL72ISMW-BfXkQ_hN.js} +1 -1
- package/dist/studio/assets/{stateDiagram-FKZM4ZOC-BAmqIsET.js → stateDiagram-FKZM4ZOC-fUXEh2qC.js} +1 -1
- package/dist/studio/assets/stateDiagram-v2-4FDKWEC3-CR8YPmT2.js +1 -0
- package/dist/studio/assets/{timeline-definition-IT6M3QCI-BNMgBtHo.js → timeline-definition-IT6M3QCI-BjXQVTYf.js} +1 -1
- package/dist/studio/assets/{treemap-GDKQZRPO-BFdbo85g.js → treemap-GDKQZRPO-ATBaEL7W.js} +1 -1
- package/dist/studio/assets/{xychartDiagram-PRI3JC2R-CTgS6W_y.js → xychartDiagram-PRI3JC2R-CFf7fFxg.js} +1 -1
- package/dist/studio/index.html +1 -1
- package/package.json +1 -1
- package/dist/studio/assets/channel-DA6Vd3mS.js +0 -1
- package/dist/studio/assets/classDiagram-2ON5EDUG-0FJ62Ib2.js +0 -1
- package/dist/studio/assets/classDiagram-v2-WZHVMYZB-0FJ62Ib2.js +0 -1
- package/dist/studio/assets/clone-BNX5khHw.js +0 -1
- package/dist/studio/assets/stateDiagram-v2-4FDKWEC3-BvS1aYAB.js +0 -1
|
@@ -29,10 +29,12 @@ Read, Write, Edit, Bash, Glob, Grep — full file system access for implementati
|
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
**In main checkout** (git_dir is `.git`):
|
|
32
|
+
This is a fallback — `isolation: worktree` may have failed. Proceed carefully.
|
|
32
33
|
```bash
|
|
33
|
-
git
|
|
34
|
-
git checkout -b <branch-name> # branch name provided in your prompt
|
|
34
|
+
git fetch origin main 2>/dev/null || true
|
|
35
|
+
git checkout -q -b <branch-name> origin/main # branch name provided in your prompt
|
|
35
36
|
```
|
|
37
|
+
**NEVER run `git checkout main`** — it switches the user's interactive session.
|
|
36
38
|
1. Read the acceptance criteria from the issue
|
|
37
39
|
2. Write a failing test for the first criterion
|
|
38
40
|
3. Implement until the test passes
|
|
@@ -39,7 +39,7 @@ When uncertain, go larger.
|
|
|
39
39
|
**Developer** (for M+ work):
|
|
40
40
|
Use the Agent tool with `subagent_type: "developer"`. Include in the prompt:
|
|
41
41
|
- The full issue body with acceptance criteria
|
|
42
|
-
-
|
|
42
|
+
- Instruction: use your current worktree branch — do NOT create a new branch
|
|
43
43
|
- The constraint: only implement what's asked, no scope creep
|
|
44
44
|
- **Reminder: developer must run `bun test`, `bun run lint`, and `bun run build` before pushing**
|
|
45
45
|
|
|
@@ -73,8 +73,8 @@ if [ -n "$SLACK_CHANNEL" ]; then
|
|
|
73
73
|
PR_URL=$(gh pr view $PR_NUMBER --json url --jq '.url')
|
|
74
74
|
THREAD_REF=$(bun .claude/scripts/slack.ts send \
|
|
75
75
|
--channel "$SLACK_CHANNEL" \
|
|
76
|
-
--text "🔍 *PR #$PR_NUMBER ready for review* — $PR_TITLE $PR_URL") \
|
|
77
|
-
&& gh pr comment $PR_NUMBER --body
|
|
76
|
+
--text "🔍 *PR #$PR_NUMBER ready for review* — $PR_TITLE $PR_URL" | tail -1) \
|
|
77
|
+
&& printf '<!-- slack-thread: %s -->' "$THREAD_REF" | gh pr comment $PR_NUMBER --body-file - \
|
|
78
78
|
|| echo "[slack] notification skipped"
|
|
79
79
|
fi
|
|
80
80
|
```
|
|
@@ -82,8 +82,8 @@ fi
|
|
|
82
82
|
**After every `bash .claude/scripts/merge-pr.sh $PR_NUMBER`** — reply in the PR's thread:
|
|
83
83
|
```bash
|
|
84
84
|
THREAD_REF=$(gh pr view $PR_NUMBER --json comments \
|
|
85
|
-
--jq '[.comments[].body | select(
|
|
86
|
-
|
|
|
85
|
+
--jq '[.comments[].body | select(contains("slack-thread:"))] | first' \
|
|
86
|
+
| grep -oE '[A-Z][A-Z0-9]{8,}:[0-9]+\.[0-9]+')
|
|
87
87
|
if [ -n "$THREAD_REF" ] && [ "$THREAD_REF" != "null" ]; then
|
|
88
88
|
bun .claude/scripts/slack.ts reply \
|
|
89
89
|
--thread "$THREAD_REF" \
|
package/.claude/agents/pulsar.md
CHANGED
|
@@ -140,8 +140,8 @@ if [ -n "$SLACK_CHANNEL" ]; then
|
|
|
140
140
|
PR_URL=$(gh pr view $PR_NUMBER --json url --jq '.url')
|
|
141
141
|
THREAD_REF=$(bun .claude/scripts/slack.ts send \
|
|
142
142
|
--channel "$SLACK_CHANNEL" \
|
|
143
|
-
--text "🔍 *PR #$PR_NUMBER ready for review* — $PR_TITLE $PR_URL") \
|
|
144
|
-
&& gh pr comment $PR_NUMBER --body
|
|
143
|
+
--text "🔍 *PR #$PR_NUMBER ready for review* — $PR_TITLE $PR_URL" | tail -1) \
|
|
144
|
+
&& printf '<!-- slack-thread: %s -->' "$THREAD_REF" | gh pr comment $PR_NUMBER --body-file - \
|
|
145
145
|
|| true
|
|
146
146
|
fi
|
|
147
147
|
```
|
|
@@ -179,8 +179,8 @@ gh issue close <N> --comment "Closed by PR #<M>."
|
|
|
179
179
|
After each merge, reply in the PR's Slack thread (best-effort):
|
|
180
180
|
```bash
|
|
181
181
|
THREAD_REF=$(gh pr view $PR_NUMBER --json comments \
|
|
182
|
-
--jq '[.comments[].body | select(
|
|
183
|
-
|
|
|
182
|
+
--jq '[.comments[].body | select(contains("slack-thread:"))] | first' \
|
|
183
|
+
| grep -oE '[A-Z][A-Z0-9]{8,}:[0-9]+\.[0-9]+')
|
|
184
184
|
if [ -n "$THREAD_REF" ] && [ "$THREAD_REF" != "null" ]; then
|
|
185
185
|
bun .claude/scripts/slack.ts reply \
|
|
186
186
|
--thread "$THREAD_REF" \
|
package/.claude/agents/worker.md
CHANGED
|
@@ -84,9 +84,24 @@ Issues are filtered and scored with dependency awareness:
|
|
|
84
84
|
- **Codex issues excluded** — any issue with the `codex` label is skipped entirely
|
|
85
85
|
- **Blocked issues excluded** — any issue with open `blocked-by` relationships is removed from
|
|
86
86
|
candidates
|
|
87
|
+
- **Recent PR guard** — any issue that already had a PR created in the last 6 hours is skipped,
|
|
88
|
+
even if the PR was closed. This prevents duplicate PRs from retry storms.
|
|
87
89
|
- **Cluster momentum** — issues in partially-complete clusters get +15 priority boost
|
|
88
90
|
- **Standard scoring** — label priorities, scope size, goal alignment
|
|
89
91
|
|
|
92
|
+
**Check for recent PRs before claiming** — skip issues that already have PRs (open or recently closed):
|
|
93
|
+
```bash
|
|
94
|
+
for CANDIDATE in <issue-numbers>; do
|
|
95
|
+
RECENT_PR=$(gh pr list --repo "$(gh repo view --json nameWithOwner --jq '.nameWithOwner')" \
|
|
96
|
+
--search "Closes #$CANDIDATE in:body" --state all --json number,createdAt,state \
|
|
97
|
+
--jq "[.[] | select((.createdAt | fromdateiso8601) > (now - 21600))] | length" 2>/dev/null)
|
|
98
|
+
if [ "${RECENT_PR:-0}" -gt "0" ]; then
|
|
99
|
+
echo "Skipping #$CANDIDATE — PR created in last 6 hours"
|
|
100
|
+
continue
|
|
101
|
+
fi
|
|
102
|
+
done
|
|
103
|
+
```
|
|
104
|
+
|
|
90
105
|
**Check attempt count before claiming** — read the existing workpad (if any) to get prior attempt count. If at max, move to Blocked instead of claiming:
|
|
91
106
|
|
|
92
107
|
```bash
|
|
@@ -139,6 +154,10 @@ ITEM_ID=$(gh api graphql -f query='{user(login:"SharadKumar"){projectV2(number:6
|
|
|
139
154
|
|
|
140
155
|
## Step 3: Develop in Parallel
|
|
141
156
|
|
|
157
|
+
**CRITICAL: One issue = one developer = one PR.** Never combine multiple issues into a single
|
|
158
|
+
developer agent or a single PR. Each issue gets its own isolated developer in its own worktree.
|
|
159
|
+
Violating this causes review failures, duplicate PRs, and retry storms.
|
|
160
|
+
|
|
142
161
|
Each developer runs in its own isolated worktree. Do NOT derive or provide branch names.
|
|
143
162
|
|
|
144
163
|
**Read agent config** from `.claudius/config.yaml` (default: `claude`):
|
|
@@ -152,11 +171,12 @@ process.stdout.write(c.agent?.command ?? 'claude');
|
|
|
152
171
|
```
|
|
153
172
|
|
|
154
173
|
**If `AGENT_COMMAND = "claude"` (default):**
|
|
155
|
-
Spawn one developer agent per issue using the `Agent` tool **concurrently**
|
|
174
|
+
Spawn **exactly one** developer agent per issue using the `Agent` tool **concurrently**
|
|
156
175
|
(all in one tool call message), using `subagent_type: "developer"`.
|
|
176
|
+
Each agent handles ONE issue only — never pass multiple issues to the same agent.
|
|
157
177
|
|
|
158
178
|
**If `AGENT_COMMAND = "codex"`:**
|
|
159
|
-
Spawn via Bash: `codex -p --model <agent.model> <agent.flags> "<prompt>" &` per issue.
|
|
179
|
+
Spawn via Bash: `codex -p --model <agent.model> <agent.flags> "<prompt>" &` — one per issue.
|
|
160
180
|
|
|
161
181
|
For each issue, each developer prompt must include:
|
|
162
182
|
- Full issue body and all acceptance criteria
|
|
@@ -238,8 +258,8 @@ if [ -n "$SLACK_CHANNEL" ]; then
|
|
|
238
258
|
PR_URL=$(gh pr view $PR_NUMBER --json url --jq '.url')
|
|
239
259
|
THREAD_REF=$(bun .claude/scripts/slack.ts send \
|
|
240
260
|
--channel "$SLACK_CHANNEL" \
|
|
241
|
-
--text "🔍 *PR #$PR_NUMBER ready for review* — $PR_TITLE $PR_URL") \
|
|
242
|
-
&& gh pr comment $PR_NUMBER --body
|
|
261
|
+
--text "🔍 *PR #$PR_NUMBER ready for review* — $PR_TITLE $PR_URL" | tail -1) \
|
|
262
|
+
&& printf '<!-- slack-thread: %s -->' "$THREAD_REF" | gh pr comment $PR_NUMBER --body-file - \
|
|
243
263
|
|| true
|
|
244
264
|
fi
|
|
245
265
|
```
|
|
@@ -311,8 +331,8 @@ ITEM_ID=$(gh api graphql -f query='{user(login:"SharadKumar"){projectV2(number:6
|
|
|
311
331
|
After each merge, reply in the PR's Slack thread (best-effort):
|
|
312
332
|
```bash
|
|
313
333
|
THREAD_REF=$(gh pr view $PR_NUMBER --json comments \
|
|
314
|
-
--jq '[.comments[].body | select(
|
|
315
|
-
|
|
|
334
|
+
--jq '[.comments[].body | select(contains("slack-thread:"))] | first' \
|
|
335
|
+
| grep -oE '[A-Z][A-Z0-9]{8,}:[0-9]+\.[0-9]+')
|
|
316
336
|
if [ -n "$THREAD_REF" ] && [ "$THREAD_REF" != "null" ]; then
|
|
317
337
|
bun .claude/scripts/slack.ts reply \
|
|
318
338
|
--thread "$THREAD_REF" \
|
|
@@ -134,6 +134,17 @@ export function evaluate(
|
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
136
|
|
|
137
|
+
// Branch creation inside a worktree — block (defense-in-depth)
|
|
138
|
+
// Agents in worktrees must use the worktree branch, never create new ones.
|
|
139
|
+
if (onWorktree && inWorktree) {
|
|
140
|
+
if (cmd.match(/git\s+(checkout\s+-b|switch\s+-c)/)) {
|
|
141
|
+
return {
|
|
142
|
+
decision: "block",
|
|
143
|
+
reason: `Branch creation blocked inside worktree on ${branch}. Use the worktree branch directly — do not create feature branches inside worktrees.`,
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
|
|
137
148
|
// Worktree branch from inside the worktree — allow commits/pushes
|
|
138
149
|
if (onWorktree && inWorktree) {
|
|
139
150
|
return { decision: "approve" };
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
import { readFileSync, existsSync } from "node:fs";
|
|
14
14
|
import { execSync } from "node:child_process";
|
|
15
15
|
import { resolve } from "node:path";
|
|
16
|
-
import { isProtectedBranch } from "../lib/workflow-config.ts";
|
|
16
|
+
import { isProtectedBranch, isInWorktreePath } from "../lib/workflow-config.ts";
|
|
17
17
|
|
|
18
18
|
export function getCurrentBranch(): string {
|
|
19
19
|
try {
|
|
@@ -31,13 +31,38 @@ function isHomeBranch(branch: string): boolean {
|
|
|
31
31
|
return isProtectedBranch(branch) || branch.startsWith("worktree-");
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
+
function detectInWorktree(): boolean {
|
|
35
|
+
const cwd = process.env.CLAUDE_PROJECT_DIR || process.cwd();
|
|
36
|
+
try {
|
|
37
|
+
const toplevel = execSync("git rev-parse --show-toplevel", {
|
|
38
|
+
cwd, encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"],
|
|
39
|
+
}).trim();
|
|
40
|
+
const gitCommonDir = execSync("git rev-parse --git-common-dir", {
|
|
41
|
+
cwd, encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"],
|
|
42
|
+
}).trim();
|
|
43
|
+
const projectDir = resolve(toplevel, gitCommonDir, "..");
|
|
44
|
+
return isInWorktreePath(toplevel, projectDir);
|
|
45
|
+
} catch {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
34
50
|
/**
|
|
35
51
|
* Returns a branch-state message to inject at session start.
|
|
36
52
|
* Warning if on a protected/home branch, confirmation if on a feature branch.
|
|
53
|
+
*
|
|
54
|
+
* @param branch - The current git branch name
|
|
55
|
+
* @param inWorktree - Whether the session is running inside the owning worktree.
|
|
56
|
+
* When true and branch is a worktree-* branch, emits a positive confirmation
|
|
57
|
+
* instead of a warning (agent is in the right place, no feature branch needed).
|
|
37
58
|
*/
|
|
38
|
-
export function getBranchWarning(branch: string): string {
|
|
59
|
+
export function getBranchWarning(branch: string, inWorktree?: boolean): string {
|
|
39
60
|
if (branch === "unknown") return "";
|
|
40
61
|
|
|
62
|
+
if (branch.startsWith("worktree-") && inWorktree === true) {
|
|
63
|
+
return `✓ Current branch: \`${branch}\` (worktree) — commit and push from this branch directly. Do NOT create a feature branch.`;
|
|
64
|
+
}
|
|
65
|
+
|
|
41
66
|
if (isHomeBranch(branch)) {
|
|
42
67
|
return `⚠ BRANCH WARNING: You are on \`${branch}\` (a protected branch). You MUST create a feature branch before writing any files.\n\nRun this exact command first:\n\`\`\`\nrm -f .git/index.lock 2>/dev/null; git checkout -q -b feat/N-slug main\n\`\`\`\n\nDo NOT attempt Write, Edit, or Bash commits until you have created a feature branch.`;
|
|
43
68
|
}
|
|
@@ -59,7 +84,8 @@ function main() {
|
|
|
59
84
|
}
|
|
60
85
|
|
|
61
86
|
const branch = getCurrentBranch();
|
|
62
|
-
const
|
|
87
|
+
const inWorktree = branch.startsWith("worktree-") ? detectInWorktree() : undefined;
|
|
88
|
+
const branchWarning = getBranchWarning(branch, inWorktree);
|
|
63
89
|
|
|
64
90
|
const parts = [personality, branchWarning].filter(Boolean);
|
|
65
91
|
if (parts.length === 0) return;
|
|
@@ -21,10 +21,10 @@
|
|
|
21
21
|
"name": "claudius",
|
|
22
22
|
"source": "./",
|
|
23
23
|
"description": "Autonomous orchestration layer for Claude Code — agents, skills, hooks, and heartbeat daemon for round-the-clock development",
|
|
24
|
-
"version": "0.
|
|
24
|
+
"version": "0.10.0",
|
|
25
25
|
"strict": true,
|
|
26
26
|
"category": "development"
|
|
27
27
|
}
|
|
28
28
|
],
|
|
29
|
-
"version": "0.
|
|
29
|
+
"version": "0.10.0"
|
|
30
30
|
}
|
package/dist/daemon/index.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ export type { ScoredIssue } from "./priority.js";
|
|
|
10
10
|
export { installDaemon, uninstallDaemon } from "./install.js";
|
|
11
11
|
export { acquireLock, releaseLock, getLockInfo, stopRunningDaemon } from "./lock.js";
|
|
12
12
|
export type { LockInfo } from "./lock.js";
|
|
13
|
-
export { loadJobs, loadLastRuns, isDue, executeJob, logRun, getDueJobs, nextRunTime, parseFrontmatter, parseCron, fieldMatches, checkGuardrails, } from "./scheduler.js";
|
|
13
|
+
export { loadJobs, loadLastRuns, isDue, executeJob, logRun, getDueJobs, nextRunTime, parseFrontmatter, parseCron, fieldMatches, checkGuardrails, isGlobalSleeplessActive, } from "./scheduler.js";
|
|
14
14
|
export type { JobDefinition, JobRun } from "./scheduler.js";
|
|
15
15
|
export { isSlimInstalled, startSlimDomain, stopSlimDomain } from "./slim.js";
|
|
16
16
|
export type { SlimHandle } from "./slim.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC5F,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EACN,UAAU,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,cAAc,GACd,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACrF,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACN,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,eAAe,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC5F,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EACN,UAAU,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,cAAc,GACd,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACrF,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACN,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,eAAe,EACf,uBAAuB,GACvB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC7E,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/daemon/index.js
CHANGED
|
@@ -6,6 +6,6 @@ export { checkConstraints, isWithinActiveHours, getTimeInTimezone } from "./cons
|
|
|
6
6
|
export { scoreIssue, pickBestIssue, filterUnblocked, clusterMomentumBonus, pickBestIssues, } from "./priority.js";
|
|
7
7
|
export { installDaemon, uninstallDaemon } from "./install.js";
|
|
8
8
|
export { acquireLock, releaseLock, getLockInfo, stopRunningDaemon } from "./lock.js";
|
|
9
|
-
export { loadJobs, loadLastRuns, isDue, executeJob, logRun, getDueJobs, nextRunTime, parseFrontmatter, parseCron, fieldMatches, checkGuardrails, } from "./scheduler.js";
|
|
9
|
+
export { loadJobs, loadLastRuns, isDue, executeJob, logRun, getDueJobs, nextRunTime, parseFrontmatter, parseCron, fieldMatches, checkGuardrails, isGlobalSleeplessActive, } from "./scheduler.js";
|
|
10
10
|
export { isSlimInstalled, startSlimDomain, stopSlimDomain } from "./slim.js";
|
|
11
11
|
//# sourceMappingURL=index.js.map
|
package/dist/daemon/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE5F,OAAO,EACN,UAAU,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,cAAc,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAErF,OAAO,EACN,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,eAAe,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE5F,OAAO,EACN,UAAU,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,cAAc,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAErF,OAAO,EACN,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,eAAe,EACf,uBAAuB,GACvB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -11,6 +11,18 @@
|
|
|
11
11
|
* - worktree → run in isolated git worktree (--worktree flag)
|
|
12
12
|
*/
|
|
13
13
|
import type { ClaudiusConfig } from "../config.js";
|
|
14
|
+
/**
|
|
15
|
+
* Check whether a global sleepless orchestrator is active for this project.
|
|
16
|
+
*
|
|
17
|
+
* Detection: look for `../.claudius/config.yaml` with `mode: global`
|
|
18
|
+
* (presence of the global config indicates sleepless may be running),
|
|
19
|
+
* combined with an active entry for this repo in `../.claudius/active-builds.jsonl`.
|
|
20
|
+
*
|
|
21
|
+
* Returns true only when both signals are present — the global config marks
|
|
22
|
+
* the directory as a global orchestrator, and the active-builds entry confirms
|
|
23
|
+
* a worker for this specific repo is currently running.
|
|
24
|
+
*/
|
|
25
|
+
export declare function isGlobalSleeplessActive(projectDir: string): boolean;
|
|
14
26
|
export interface JobDefinition {
|
|
15
27
|
name: string;
|
|
16
28
|
cron: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/daemon/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/daemon/scheduler.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon/scheduler.js
CHANGED
|
@@ -14,6 +14,59 @@ import { execSync, spawnSync } from "node:child_process";
|
|
|
14
14
|
import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync } from "node:fs";
|
|
15
15
|
import { dirname, resolve } from "node:path";
|
|
16
16
|
import { checkConstraints } from "./constraints.js";
|
|
17
|
+
/**
|
|
18
|
+
* Build job names that spawn autonomous workers — these must be skipped when
|
|
19
|
+
* a global sleepless orchestrator is already managing this repo to prevent
|
|
20
|
+
* duplicate builds, race conditions, and conflicting worktree claims.
|
|
21
|
+
*/
|
|
22
|
+
const BUILD_JOB_NAMES = new Set(["pulse", "pulsar"]);
|
|
23
|
+
/**
|
|
24
|
+
* Check whether a global sleepless orchestrator is active for this project.
|
|
25
|
+
*
|
|
26
|
+
* Detection: look for `../.claudius/config.yaml` with `mode: global`
|
|
27
|
+
* (presence of the global config indicates sleepless may be running),
|
|
28
|
+
* combined with an active entry for this repo in `../.claudius/active-builds.jsonl`.
|
|
29
|
+
*
|
|
30
|
+
* Returns true only when both signals are present — the global config marks
|
|
31
|
+
* the directory as a global orchestrator, and the active-builds entry confirms
|
|
32
|
+
* a worker for this specific repo is currently running.
|
|
33
|
+
*/
|
|
34
|
+
export function isGlobalSleeplessActive(projectDir) {
|
|
35
|
+
const parentDir = resolve(projectDir, "..");
|
|
36
|
+
const globalConfigPath = resolve(parentDir, ".claudius/config.yaml");
|
|
37
|
+
const activeBuildsPath = resolve(parentDir, ".claudius/active-builds.jsonl");
|
|
38
|
+
// Fast exit: no global config means this is a standalone repo
|
|
39
|
+
if (!existsSync(globalConfigPath))
|
|
40
|
+
return false;
|
|
41
|
+
// Check global config has mode: global
|
|
42
|
+
try {
|
|
43
|
+
const configContent = readFileSync(globalConfigPath, "utf-8");
|
|
44
|
+
if (!configContent.includes("mode: global"))
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
// Check for an active-builds entry for this repo
|
|
51
|
+
if (!existsSync(activeBuildsPath))
|
|
52
|
+
return false;
|
|
53
|
+
try {
|
|
54
|
+
const repoName = resolve(projectDir).split("/").pop() ?? "";
|
|
55
|
+
const lines = readFileSync(activeBuildsPath, "utf-8").split("\n").filter(Boolean);
|
|
56
|
+
return lines.some((line) => {
|
|
57
|
+
try {
|
|
58
|
+
const entry = JSON.parse(line);
|
|
59
|
+
return entry.repo === repoName && entry.status === "running";
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
17
70
|
/**
|
|
18
71
|
* Parse simple YAML frontmatter from a markdown string.
|
|
19
72
|
* Handles key: value pairs (strings, numbers, booleans). No nested objects.
|
|
@@ -419,7 +472,16 @@ export function logRun(projectDir, run) {
|
|
|
419
472
|
export function getDueJobs(projectDir, jobsDir, now) {
|
|
420
473
|
const jobs = loadJobs(projectDir, jobsDir);
|
|
421
474
|
const lastRuns = loadLastRuns(projectDir);
|
|
422
|
-
|
|
475
|
+
const sleeplessActive = isGlobalSleeplessActive(projectDir);
|
|
476
|
+
return jobs.filter((job) => {
|
|
477
|
+
if (!isDue(job, lastRuns, now))
|
|
478
|
+
return false;
|
|
479
|
+
// Skip build jobs when global sleepless is orchestrating this repo —
|
|
480
|
+
// running both would cause duplicate PRs and conflicting worktree claims.
|
|
481
|
+
if (sleeplessActive && BUILD_JOB_NAMES.has(job.name))
|
|
482
|
+
return false;
|
|
483
|
+
return true;
|
|
484
|
+
});
|
|
423
485
|
}
|
|
424
486
|
/**
|
|
425
487
|
* Compute the next run time for a job (approximate — scans forward minute by minute).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/daemon/scheduler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/daemon/scheduler.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -50,6 +50,7 @@ Usage:
|
|
|
50
50
|
claudius studio up Start studio + slim .test domain (foreground)
|
|
51
51
|
claudius studio down Stop studio or remove .test domain
|
|
52
52
|
claudius update Update claudius-core + reconcile config + refresh
|
|
53
|
+
claudius update --mode=global Update global binary + reconcile global dir
|
|
53
54
|
|
|
54
55
|
Options:
|
|
55
56
|
--help, -h Show this help
|
|
@@ -501,7 +502,21 @@ async function cmdInstall() {
|
|
|
501
502
|
await cmdInit(false);
|
|
502
503
|
console.log("\nDone. Use `npx claudius` for all commands.");
|
|
503
504
|
}
|
|
504
|
-
async function cmdUpdate() {
|
|
505
|
+
async function cmdUpdate(mode) {
|
|
506
|
+
if (mode === "global") {
|
|
507
|
+
console.log("Updating global claudius binary...");
|
|
508
|
+
try {
|
|
509
|
+
execSync("npm install -g claudius-core", { stdio: "inherit" });
|
|
510
|
+
}
|
|
511
|
+
catch (error) {
|
|
512
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
513
|
+
console.error(`Global install failed: ${message}`);
|
|
514
|
+
process.exit(1);
|
|
515
|
+
}
|
|
516
|
+
console.log("\nReconciling global dir files...");
|
|
517
|
+
await cmdInitGlobal(true);
|
|
518
|
+
return;
|
|
519
|
+
}
|
|
505
520
|
const projectDir = process.cwd();
|
|
506
521
|
const isClaudiusProject = existsSync(resolve(projectDir, ".claudius/config.yaml"));
|
|
507
522
|
console.log("Updating claudius-core...");
|
|
@@ -810,9 +825,11 @@ async function main() {
|
|
|
810
825
|
else
|
|
811
826
|
console.log("Usage: claudius studio <up|down> [--port PORT] [--no-open]");
|
|
812
827
|
break;
|
|
813
|
-
case "update":
|
|
814
|
-
|
|
828
|
+
case "update": {
|
|
829
|
+
const updateMode = args.find((a) => a.startsWith("--mode="))?.split("=")[1];
|
|
830
|
+
await cmdUpdate(updateMode);
|
|
815
831
|
break;
|
|
832
|
+
}
|
|
816
833
|
default:
|
|
817
834
|
console.error(`Unknown command: ${command}`);
|
|
818
835
|
printUsage();
|