claude-nexus 0.28.2 โ†’ 0.30.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.
@@ -6,17 +6,16 @@
6
6
  "plugins": [
7
7
  {
8
8
  "name": "claude-nexus",
9
- "description": "Agent orchestration plugin for Claude Code. Injects optimized context per agent role with minimal overhead.",
10
- "version": "0.28.2",
9
+ "description": "Claude Code plugin for nexus-core agent orchestration",
10
+ "version": "0.30.0",
11
11
  "author": {
12
12
  "name": "kih"
13
13
  },
14
14
  "source": "./",
15
15
  "category": "productivity",
16
16
  "tags": [
17
- "agent-orchestration",
18
- "context-injection",
19
- "workflow"
17
+ "nexus",
18
+ "agent-orchestration"
20
19
  ]
21
20
  }
22
21
  ]
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "claude-nexus",
3
- "version": "0.28.2",
4
- "description": "Agent orchestration plugin for Claude Code โ€” optimized context injection per role",
3
+ "version": "0.30.0",
4
+ "description": "Claude Code plugin for nexus-core agent orchestration",
5
5
  "author": {
6
6
  "name": "kih"
7
7
  },
8
8
  "license": "MIT",
9
+ "homepage": "https://github.com/moreih29/claude-nexus",
10
+ "repository": "https://github.com/moreih29/claude-nexus",
9
11
  "keywords": [
10
12
  "claude-code",
11
13
  "plugin",
12
- "agent-orchestration",
13
- "context-injection"
14
- ],
15
- "skills": "./skills/",
16
- "mcpServers": "./.mcp.json"
14
+ "nexus",
15
+ "agent-orchestration"
16
+ ]
17
17
  }
package/.mcp.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "mcpServers": {
3
- "nx": {
3
+ "nexus-core": {
4
4
  "command": "node",
5
- "args": ["${CLAUDE_PLUGIN_ROOT}/node_modules/@moreih29/nexus-core/dist/src/mcp/server.js"]
5
+ "args": ["${CLAUDE_PLUGIN_ROOT}/dist/mcp/server.js"]
6
6
  }
7
7
  }
8
8
  }
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 kih
3
+ Copyright (c) 2026 moreih29
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.en.md CHANGED
@@ -5,188 +5,91 @@
5
5
 
6
6
  > ๐ŸŒ [ํ•œ๊ตญ์–ด](README.md)
7
7
 
8
- Agent orchestration plugin for Claude Code.
8
+ Nexus agent orchestration plugin for Claude Code. Registers the canonical agents, skills, and MCP server from [nexus-core](https://github.com/moreih29/nexus-core) into the Claude harness.
9
9
 
10
- ## Why
10
+ ## What's inside
11
11
 
12
- Specialized subagents handle development and research systematically โ€” architect, engineer, tester, researcher, and more. One tag triggers automatic orchestration of complex tasks across the right agents without manual coordination.
12
+ - **10 agents**: architect ยท designer ยท engineer ยท **lead** ยท postdoc ยท researcher ยท reviewer ยท strategist ยท tester ยท writer
13
+ - **3 skills**: `nx-auto-plan` ยท `nx-plan` ยท `nx-run` โ€” activated by `[plan]` ยท `[auto-plan]` ยท `[run]` tags
14
+ - **`nexus-core` MCP server**: 13 state management tools for planning, tasks, history, and artifacts (`nx_plan_*` ยท `nx_task_*` ยท `nx_history_search` ยท `nx_artifact_write`)
15
+ - **2 hooks**:
16
+ - `SessionStart` โ€” ensures the `.nexus/` folder layout and whitelist `.gitignore`
17
+ - `UserPromptSubmit` โ€” routes six tags (`[plan]` ยท `[auto-plan]` ยท `[run]` ยท `[m]` ยท `[m:gc]` ยท `[d]`)
18
+ - Ships with `settings.json` that makes `lead` the main-thread agent when the plugin is active
13
19
 
14
- ## Quick Start
20
+ ### Required setting
15
21
 
16
- **1. Install**
22
+ Claude Code does not honor `env` from a plugin's `settings.json`, so subagent resume (via `SendMessage`) only works when `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` is set in your own `~/.claude/settings.json` or project `.claude/settings.json`:
17
23
 
18
- ```bash
19
- claude plugin marketplace add https://github.com/moreih29/claude-nexus.git
20
- claude plugin install claude-nexus@nexus
24
+ ```json
25
+ {
26
+ "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" }
27
+ }
21
28
  ```
22
29
 
23
- **2. Onboard your project**
24
-
25
- Run `/claude-nexus:nx-init` โ€” scans your project and auto-generates structured knowledge under `.nexus/`.
30
+ ## Install
26
31
 
27
- **3. Start using**
32
+ From inside Claude Code, use the plugin marketplace.
28
33
 
29
- - **Plan**: `[plan] How should we design the auth system?` โ€” clarify intent and align before executing
30
- - **Run**: `[run] Implement login API` โ€” subagents handle analysis through implementation
34
+ ```
35
+ /plugin marketplace add moreih29/claude-nexus
36
+ /plugin install claude-nexus@nexus
37
+ ```
31
38
 
32
39
  ## Usage
33
40
 
34
- Tag your message to route it to the right workflow:
35
-
36
- | Tag | Action | Example |
37
- |-----|--------|---------|
38
- | `[plan]` | Pre-execution planning | `[plan] Discuss DB migration strategy` |
39
- | `[run]` | Execution (subagent composition) | `[run] Refactor payment module` |
40
- | `[d]` | Record a decision (within plan session) | `[d] Use PostgreSQL for primary storage` |
41
- | `[rule]` | Save a rule | `[rule] Always use bun instead of npm` |
42
- | `[m]` | Add a memo | `[m] Revisit this pattern later` |
43
- | `[m:gc]` | Garbage-collect memos | `[m:gc]` |
44
- | `[sync]` | Sync context/ | `[sync]` |
45
-
46
- Typical flow: `[plan]` to discuss and align โ†’ `[d]` to decide (within plan) โ†’ `[run]` to execute.
47
-
48
- ## Agents
49
-
50
- ### How (4 agents)
51
-
52
- | Agent | Invocation | Role | Model |
53
- |-------|-----------|------|-------|
54
- | **Architect** | `claude-nexus:architect` | Technical design and architecture review | opus |
55
- | **Designer** | `claude-nexus:designer` | UI/UX design and interaction patterns | opus |
56
- | **Postdoc** | `claude-nexus:postdoc` | Research methodology and evidence synthesis | opus |
57
- | **Strategist** | `claude-nexus:strategist` | Business strategy and competitive positioning | opus |
58
-
59
- ### Do (3 agents)
60
-
61
- | Agent | Invocation | Role | Model |
62
- |-------|-----------|------|-------|
63
- | **Engineer** | `claude-nexus:engineer` | Code implementation and debugging | sonnet |
64
- | **Researcher** | `claude-nexus:researcher` | Web search, independent investigation | sonnet |
65
- | **Writer** | `claude-nexus:writer` | Technical writing and documentation | sonnet |
66
-
67
- ### Check (2 agents)
68
-
69
- | Agent | Invocation | Role | Model |
70
- |-------|-----------|------|-------|
71
- | **Tester** | `claude-nexus:tester` | Verification, testing, and security review | sonnet |
72
- | **Reviewer** | `claude-nexus:reviewer` | Content verification and fact-checking | sonnet |
73
-
74
- ## Skills
75
-
76
- | Skill | Trigger | Description |
77
- |-------|---------|-------------|
78
- | **nx-plan** | `[plan]` | Structured planning. Clarify requirements โ†’ record decisions (`[d]`) โ†’ recommend execution tag |
79
- | **nx-run** | `[run]` | Execution. User-directed agent composition for development, research, and more |
80
- | **nx-init** | `/claude-nexus:nx-init` | Full project onboarding: scan codebase, establish identity, generate core knowledge |
81
- | **nx-setup** | `/claude-nexus:nx-setup` | Interactive setup. Injects agent/skill/tag configuration into CLAUDE.md |
82
- | **nx-sync** | `/claude-nexus:nx-sync` | Context sync. Reflects source changes into .nexus/context/ docs |
83
-
84
- ## Advanced
85
-
86
- <details>
87
- <summary>MCP Tools</summary>
41
+ With the plugin enabled, each new Claude Code session runs the `lead` agent as the main thread. Prefix a request with a tag to activate a skill.
88
42
 
89
- Claude-callable tools exposed by the Nexus MCP server.
43
+ | Tag | Effect |
44
+ |---|---|
45
+ | `[plan]` | `nx-plan` โ€” multi-perspective structured planning |
46
+ | `[auto-plan]` | `nx-auto-plan` โ€” auto-decompose the request into a plan |
47
+ | `[run]` | `nx-run` โ€” execute the current plan's tasks |
48
+ | `[m] <body>` | Store a lesson or reference under `.nexus/memory/` |
49
+ | `[m:gc]` | Garbage-collect `.nexus/memory/` |
50
+ | `[d] <decision>` | Record a decision on the active plan issue |
90
51
 
91
- ### Core (10 tools)
52
+ ## Optional: statusline
92
53
 
93
- | Tool | Purpose |
94
- |------|---------|
95
- | `nx_task_list/add/update/close` | Task management + history.json archiving |
96
- | `nx_history_search` | Search past plan/task cycles (topic/decision query, last N) |
97
- | `nx_artifact_write` | Save artifacts (branch-isolated) |
98
- | `nx_plan_start` | Start plan session (topic + issues + research summary) |
99
- | `nx_plan_status` | Query plan state |
100
- | `nx_plan_update` | Modify plan issues (add/remove/edit/reopen) |
101
- | `nx_plan_decide` | Record issue decision (plan.json) |
54
+ The plugin ships a two-line statusline script. Line one shows `โ—†Nexus vX.Y.Z`, the model, the project, and the git branch with staged/unstaged counts. Line two shows context-window usage plus 5-hour and 7-day Claude usage gauges with the time until each resets. The usage gauges require a Claude Pro or Max OAuth session; `~/.claude/.usage_cache` is shared across local sessions so concurrent Claude Code windows never re-fetch.
102
55
 
103
- ### Code Intelligence (8 tools)
56
+ Claude Code does not let a plugin auto-configure the user's `statusLine`, so register the `claude-nexus-statusline` CLI (shipped with the same npm package) from your own `~/.claude/settings.json`.
104
57
 
105
- | Tool | Purpose |
106
- |------|---------|
107
- | `nx_lsp_hover` | Symbol type information |
108
- | `nx_lsp_goto_definition` | Jump to definition |
109
- | `nx_lsp_find_references` | List all references |
110
- | `nx_lsp_diagnostics` | Compiler and linter errors |
111
- | `nx_lsp_rename` | Project-wide symbol rename |
112
- | `nx_lsp_code_actions` | Auto-fix and refactoring suggestions |
113
- | `nx_lsp_document_symbols` | Symbols in a file |
114
- | `nx_lsp_workspace_symbols` | Project-wide symbol search |
115
-
116
- LSP auto-detects the project language (e.g., `tsconfig.json` โ†’ TypeScript).
117
-
118
- </details>
119
-
120
- <details>
121
- <summary>Hook</summary>
122
-
123
- Nexus registers a single Gate module as a Claude Code hook.
124
-
125
- | Event | Role |
126
- |-------|------|
127
- | `SessionStart` | Initialize `.nexus/` structure, reset agent-tracker, init `tool-log.jsonl` |
128
- | `UserPromptSubmit` | Tag detection โ†’ mode activation + TASK_PIPELINE injection + additionalContext guidance |
129
- | `PreToolUse` | Edit/Write: blocks when incomplete tasks exist |
130
- | `PostToolUse` | On Edit/Write/NotebookEdit, append subagent file edits to `tool-log.jsonl` (only when agent_id present) |
131
- | `SubagentStart` | Auto-inject role-filtered core knowledge index (lazy-read). Upsert `resume_count`/`last_resumed_at` when agent_id recurs |
132
- | `SubagentStop` | Record agent completion + aggregate `tool-log.jsonl` โ†’ inject `files_touched` into agent-tracker entry |
133
- | `Stop` | Blocks exit with pending tasks. Forces nx_task_close when all completed |
134
- | `PostCompact` | Snapshot session state (mode, plan, agent status) |
135
-
136
- </details>
137
-
138
- <details>
139
- <summary>Project Knowledge</summary>
140
-
141
- Project knowledge and rules are stored under `.nexus/` and tracked by git.
58
+ ### bunx or npx (no install)
142
59
 
60
+ ```json
61
+ {
62
+ "statusLine": {
63
+ "type": "command",
64
+ "command": "bunx claude-nexus-statusline"
65
+ }
66
+ }
143
67
  ```
144
- .nexus/
145
- memory/ โ€” lessons learned, references
146
- context/ โ€” design principles, architecture philosophy
147
- state/ โ€” plan.json, tasks.json
148
- rules/ โ€” project custom rules
149
- history.json
150
- ```
151
-
152
- - `memory/`, `context/`, `rules/` โ€” git-tracked.
153
- - `state/` โ€” runtime state. git-ignored.
154
- - `history.json` โ€” cycle archive. git-tracked.
155
68
 
156
- </details>
69
+ `npx -y claude-nexus-statusline` works the same way. The first call downloads the package to the local cache; subsequent calls run from that cache.
157
70
 
158
- <details>
159
- <summary>Runtime State</summary>
71
+ ### Global install (fastest startup)
160
72
 
161
- Runtime state is stored under `.nexus/state/` and is excluded from git.
162
-
163
- ```
164
- .nexus/state/
165
- โ”œโ”€โ”€ tasks.json โ† Task list ([run] cycle)
166
- โ”œโ”€โ”€ plan.json โ† Planning session ([plan] cycle)
167
- โ””โ”€โ”€ claude-nexus/ โ† harness-local namespace
168
- โ”œโ”€โ”€ agent-tracker.json โ† Subagent lifecycle tracking (resume_count, files_touched)
169
- โ”œโ”€โ”€ tool-log.jsonl โ† Subagent Edit/Write/NotebookEdit call log (append-only)
170
- โ””โ”€โ”€ artifacts/ โ† Artifacts
73
+ ```bash
74
+ bun add -g claude-nexus # or npm i -g claude-nexus
171
75
  ```
172
76
 
173
- </details>
174
-
175
- <details>
176
- <summary>Subagent Resume (resume_tier)</summary>
177
-
178
- Completed subagents can be resumed within the same parent session via `SendMessage`. Each agent's `resume_tier` frontmatter classifies its policy.
77
+ ```json
78
+ {
79
+ "statusLine": {
80
+ "type": "command",
81
+ "command": "claude-nexus-statusline"
82
+ }
83
+ }
84
+ ```
179
85
 
180
- | Tier | Policy | Agents |
181
- |------|--------|--------|
182
- | **persistent** | Default-resume within same issue, Lead opt-in across issues, forced fresh on counter-evidence/review | architect, designer, postdoc, strategist, researcher |
183
- | **bounded** | Conditional resume only when working on the same artifact (file); forced fresh on loop/feedback cycles | engineer, writer |
184
- | **ephemeral** | Always fresh spawn (preserves verification independence) | tester, reviewer |
86
+ Update with a single `bun update -g claude-nexus` (or `npm update -g claude-nexus`).
185
87
 
186
- **Activation requirement**: environment variable `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`. When absent, automatically falls back to fresh spawn (no errors).
88
+ ## Requirements
187
89
 
188
- **Rationale**: Agents are classified by their dominant work surface. Reasoning surface (exists only in agent context) โ†’ `persistent` (HOW + Researcher). Mixed with artifact surface (persisted to filesystem) โ†’ `bounded` (Engineer, Writer). Verification independence as quality metric โ†’ `ephemeral` (Tester, Reviewer). See `.nexus/memory/pattern-persistence-surface-theory.md` for details.
90
+ - Claude Code (latest)
91
+ - Node.js 20 or later at runtime
189
92
 
190
- **Tracking**: `PostToolUse` hook appends subagent file edits to `tool-log.jsonl` โ†’ `SubagentStop` aggregates them into `files_touched` on `agent-tracker.json` โ†’ Lead uses this for bounded-tier conditional resume decisions.
93
+ ## License
191
94
 
192
- </details>
95
+ MIT
package/README.md CHANGED
@@ -5,175 +5,91 @@
5
5
 
6
6
  > ๐ŸŒ [English](README.en.md)
7
7
 
8
- Claude Code๋ฅผ ์œ„ํ•œ ์—์ด์ „ํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ํ”Œ๋Ÿฌ๊ทธ์ธ.
8
+ Claude Code์šฉ Nexus ์—์ด์ „ํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ํ”Œ๋Ÿฌ๊ทธ์ธ. [nexus-core](https://github.com/moreih29/nexus-core)์˜ canonical ์—์ด์ „ํŠธยท์Šคํ‚ฌยทMCP ์„œ๋ฒ„๋ฅผ Claude ํ•˜๋„ค์Šค์— ๋“ฑ๋กํ•œ๋‹ค.
9
9
 
10
- ## Why
10
+ ## ๋ฌด์—‡์ด ๋“ค์–ด ์žˆ๋‚˜
11
11
 
12
- ๋ณต์žกํ•œ ๊ฐœ๋ฐœ/๋ฆฌ์„œ์น˜ ์ž‘์—…์„ ํ˜ผ์ž ์ฒ˜๋ฆฌํ•˜๋Š” ๋Œ€์‹ , ์ „๋ฌธํ™”๋œ ์—์ด์ „ํŠธ ํŒ€์ด ์—ญํ• ์„ ๋‚˜๋ˆ  ์ฒด๊ณ„์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํƒœ๊ทธ ํ•˜๋‚˜๋กœ ์ƒ๋‹ด, ๊ฐœ๋ฐœ, ๋ฆฌ์„œ์น˜ ์›Œํฌํ”Œ๋กœ์šฐ๊ฐ€ ์ž๋™ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜๋ฉ๋‹ˆ๋‹ค.
12
+ - **์—์ด์ „ํŠธ 10์ข…**: architect ยท designer ยท engineer ยท **lead** ยท postdoc ยท researcher ยท reviewer ยท strategist ยท tester ยท writer
13
+ - **์Šคํ‚ฌ 3์ข…**: `nx-auto-plan` ยท `nx-plan` ยท `nx-run` โ€” `[plan]`ยท`[auto-plan]`ยท`[run]` ํƒœ๊ทธ๋กœ ํ™œ์„ฑํ™”
14
+ - **MCP ์„œ๋ฒ„ `nexus-core`**: ํ”Œ๋ž˜๋‹ยทํƒœ์Šคํฌยท์ด๋ ฅยท์•„ํ‹ฐํŒฉํŠธ ์ƒํƒœ ๊ด€๋ฆฌ ๋„๊ตฌ 13์ข… (`nx_plan_*`ยท`nx_task_*`ยท`nx_history_search`ยท`nx_artifact_write`)
15
+ - **ํ›… 2์ข…**:
16
+ - `SessionStart` โ€” `.nexus/` ํด๋” ๊ตฌ์กฐ์™€ ํ™”์ดํŠธ๋ฆฌ์ŠคํŠธ `.gitignore` ๋ณด์žฅ
17
+ - `UserPromptSubmit` โ€” ํƒœ๊ทธ 6์ข… (`[plan]`ยท`[auto-plan]`ยท`[run]`ยท`[m]`ยท`[m:gc]`ยท`[d]`) ๋ผ์šฐํŒ…
18
+ - ํ™œ์„ฑํ™” ์‹œ `lead` ์—์ด์ „ํŠธ๊ฐ€ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๊ฐ€ ๋˜๋„๋ก `settings.json` ๊ธฐ๋ณธ ํฌํ•จ
13
19
 
14
- ## Quick Start
20
+ ### ํ•„์š” ์„ค์ •
15
21
 
16
- **์„ค์น˜**
22
+ ์„œ๋ธŒ์—์ด์ „ํŠธ resume(SendMessage) ๊ธฐ๋Šฅ์„ ์“ฐ๋ ค๋ฉด Claude Code ์„ธ์…˜์— `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค (Claude Code๊ฐ€ ํ”Œ๋Ÿฌ๊ทธ์ธ `settings.json`์˜ `env`๋Š” ์ ์šฉํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์„ค์ •). `~/.claude/settings.json` ๋˜๋Š” ํ”„๋กœ์ ํŠธ `.claude/settings.json`์— ์ถ”๊ฐ€:
17
23
 
18
- ```bash
19
- claude plugin marketplace add https://github.com/moreih29/claude-nexus.git
20
- claude plugin install claude-nexus@nexus
24
+ ```json
25
+ {
26
+ "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" }
27
+ }
21
28
  ```
22
29
 
23
- **์˜จ๋ณด๋”ฉ**
24
-
25
- `/claude-nexus:nx-init`์„ ์ฒ˜์Œ ์‹คํ–‰ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ๋ฅผ ์Šค์บ”ํ•ด `.nexus/`์— ์ง€์‹์„ ์ž๋™ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
26
-
27
- > **Important**: ํ•˜๋‚˜์˜ ์›Œํฌ์ŠคํŽ˜์ด์Šค์—์„œ ๋™์‹œ์— ์—ฌ๋Ÿฌ Claude Code ์„ธ์…˜์„ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ƒํƒœ ํŒŒ์ผ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
28
-
29
- **์ฒซ ์‚ฌ์šฉ**
30
-
31
- - **ํ”Œ๋žœ**: `[plan] ์ธ์ฆ ์‹œ์Šคํ…œ ์–ด๋–ป๊ฒŒ ์„ค๊ณ„ํ•˜๋ฉด ์ข‹์„๊นŒ?`
32
- - **๊ฒฐ์ • ๊ธฐ๋ก**: (plan ์ค‘) `์‘ ๊ทธ ๋ฐฉํ–ฅ์œผ๋กœ [d]`
33
- - **์‹คํ–‰**: `[run] ๋กœ๊ทธ์ธ API ๊ตฌํ˜„`
34
-
35
- ## ์‚ฌ์šฉ๋ฒ•
36
-
37
- | ํƒœ๊ทธ | ๋™์ž‘ | ์˜ˆ์‹œ |
38
- |------|------|------|
39
- | `[plan]` | ํ”Œ๋žœ ๋ชจ๋“œ ํ™œ์„ฑํ™” | `[plan] DB ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ „๋žต ๋…ผ์˜` |
40
- | `[d]` | ๊ฒฐ์ • ๊ธฐ๋ก (plan ์„ธ์…˜ ๋‚ด) | `์‘ ๊ทธ ๋ฐฉํ–ฅ์œผ๋กœ [d]` |
41
- | `[run]` | ์‹คํ–‰ (์„œ๋ธŒ์—์ด์ „ํŠธ ๊ตฌ์„ฑ) | `[run] ๊ฒฐ์ œ ๋ชจ๋“ˆ ๋ฆฌํŒฉํ† ๋ง` |
42
- | `[rule]` | ๊ทœ์น™ ์ €์žฅ | `[rule] npm ๋Œ€์‹  bun ์‚ฌ์šฉ` |
43
- | `[m]` | ๋ฉ”๋ชจ ์ถ”๊ฐ€ | `[m] ์ด ํŒจํ„ด์€ ๋‚˜์ค‘์— ์ฐธ๊ณ ` |
44
- | `[m:gc]` | ๋ฉ”๋ชจ ์ •๋ฆฌ | `[m:gc]` |
45
- | `[sync]` | context/ ๋™๊ธฐํ™” | `[sync]` |
46
-
47
- ## ์—์ด์ „ํŠธ
48
-
49
- | ์นดํ…Œ๊ณ ๋ฆฌ | ์—์ด์ „ํŠธ | ์—ญํ•  | ๋ชจ๋ธ |
50
- |----------|----------|------|------|
51
- | **How** | Architect | ๊ธฐ์ˆ  ์„ค๊ณ„, ์•„ํ‚คํ…์ฒ˜ ๋ฆฌ๋ทฐ | opus |
52
- | **How** | Designer | UI/UX ์„ค๊ณ„, ์ธํ„ฐ๋ž™์…˜ ํŒจํ„ด | opus |
53
- | **How** | Postdoc | ๋ฐฉ๋ฒ•๋ก  ์„ค๊ณ„, ์ฆ๊ฑฐ ํ‰๊ฐ€ | opus |
54
- | **How** | Strategist | ์ฝ˜ํ…์ธ  ์ „๋žต, ๋ฐฉํ–ฅ ์„ค์ • | opus |
55
- | **Do** | Engineer | ์ฝ”๋“œ ๊ตฌํ˜„, ๋””๋ฒ„๊น… | sonnet |
56
- | **Do** | Researcher | ์›น ๊ฒ€์ƒ‰, ๋…๋ฆฝ ์กฐ์‚ฌ | sonnet |
57
- | **Do** | Writer | ๊ธฐ์ˆ  ๋ฌธ์„œ, ํ”„๋ ˆ์  ํ…Œ์ด์…˜ | sonnet |
58
- | **Check** | Tester | ์ฝ”๋“œ ๊ฒ€์ฆ, ํ…Œ์ŠคํŠธ, ๋ณด์•ˆ | sonnet |
59
- | **Check** | Reviewer | ์ฝ˜ํ…์ธ  ๊ฒ€์ฆ, ์ถœ์ฒ˜ ํ™•์ธ | sonnet |
60
-
61
- ## ์Šคํ‚ฌ
62
-
63
- | ์Šคํ‚ฌ | ํŠธ๋ฆฌ๊ฑฐ | ์„ค๋ช… |
64
- |------|--------|------|
65
- | **nx-plan** | `[plan]` | ๊ตฌ์กฐํ™”๋œ ํ”Œ๋žœ. ์š”๊ตฌ์‚ฌํ•ญ ์ •๋ฆฌ โ†’ ๊ฒฐ์ • ๊ธฐ๋ก |
66
- | **nx-run** | `[run]` | ๋™์  ์—์ด์ „ํŠธ ๊ตฌ์„ฑ ์‹คํ–‰ |
67
- | **nx-init** | `/claude-nexus:nx-init` | ํ”„๋กœ์ ํŠธ ์˜จ๋ณด๋”ฉ. ์ฝ”๋“œ ์Šค์บ” โ†’ ์ง€์‹ ์ƒ์„ฑ |
68
- | **nx-setup** | `/claude-nexus:nx-setup` | ๋Œ€ํ™”ํ˜• ์„ค์ • |
69
- | **nx-sync** | `/claude-nexus:nx-sync` | context/ ๋™๊ธฐํ™”. ์†Œ์Šค ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ .nexus/context/ ๋ฌธ์„œ์— ๋ฐ˜์˜ |
70
-
71
- ## ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ
72
-
73
- <details>
74
- <summary>MCP ๋„๊ตฌ</summary>
75
-
76
- Claude๊ฐ€ ์ง์ ‘ ํ˜ธ์ถœํ•˜๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.
30
+ ## ์„ค์น˜
77
31
 
78
- ### Core (10๊ฐœ)
32
+ Claude Code ์•ˆ์—์„œ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค๋กœ ์„ค์น˜ํ•œ๋‹ค.
79
33
 
80
- | ๋„๊ตฌ | ์šฉ๋„ |
81
- |------|------|
82
- | `nx_task_list/add/update/close` | `.nexus/state/tasks.json` ๊ธฐ๋ฐ˜ ํƒœ์Šคํฌ ๊ด€๋ฆฌ + `.nexus/history.json` ์•„์นด์ด๋ธŒ |
83
- | `nx_history_search` | ๊ณผ๊ฑฐ plan/task ์‚ฌ์ดํด ๊ฒ€์ƒ‰ (topic/decision ๊ฒ€์ƒ‰, ์ตœ๊ทผ N๊ฐœ) |
84
- | `nx_artifact_write` | ํŒ€ ์‚ฐ์ถœ๋ฌผ ์ €์žฅ (`.nexus/state/artifacts/`) |
85
- | `nx_plan_start` | ํ”Œ๋žœ ์„ธ์…˜ ์‹œ์ž‘ (ํ† ํ”ฝ + ๋…ผ์  + ๋ฆฌ์„œ์น˜ ์š”์•ฝ ๋“ฑ๋ก) |
86
- | `nx_plan_status` | ํ”Œ๋žœ ์ƒํƒœ ์กฐํšŒ |
87
- | `nx_plan_update` | ํ”Œ๋žœ ๋…ผ์  ์ˆ˜์ • (add/remove/edit/reopen) |
88
- | `nx_plan_decide` | ๋…ผ์  ๊ฒฐ์ • ์ฒ˜๋ฆฌ (plan.json) |
89
-
90
- ### Code Intelligence (8๊ฐœ)
91
-
92
- | ๋„๊ตฌ | ์šฉ๋„ |
93
- |------|------|
94
- | `nx_lsp_hover` | ์‹ฌ๋ณผ ํƒ€์ž… ์ •๋ณด |
95
- | `nx_lsp_goto_definition` | ์ •์˜ ์œ„์น˜ ์ด๋™ |
96
- | `nx_lsp_find_references` | ์ฐธ์กฐ ๋ชฉ๋ก |
97
- | `nx_lsp_diagnostics` | ์ปดํŒŒ์ผ๋Ÿฌ/๋ฆฐํ„ฐ ์—๋Ÿฌ |
98
- | `nx_lsp_rename` | ํ”„๋กœ์ ํŠธ ์ „์ฒด ์‹ฌ๋ณผ ๋ฆฌ๋„ค์ž„ |
99
- | `nx_lsp_code_actions` | ์ž๋™ ์ˆ˜์ •/๋ฆฌํŒฉํ† ๋ง ์ œ์•ˆ |
100
- | `nx_lsp_document_symbols` | ํŒŒ์ผ ๋‚ด ์‹ฌ๋ณผ ๋ชฉ๋ก |
101
- | `nx_lsp_workspace_symbols` | ํ”„๋กœ์ ํŠธ ์ „์ฒด ์‹ฌ๋ณผ ๊ฒ€์ƒ‰ |
34
+ ```
35
+ /plugin marketplace add moreih29/claude-nexus
36
+ /plugin install claude-nexus@nexus
37
+ ```
102
38
 
103
- LSP๋Š” ํ”„๋กœ์ ํŠธ ์–ธ์–ด๋ฅผ ์ž๋™ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค (tsconfig.json โ†’ TypeScript ๋“ฑ).
39
+ ## ์‚ฌ์šฉ
104
40
 
105
- </details>
41
+ ์„ค์น˜ ํ›„ ์ƒˆ Claude Code ์„ธ์…˜์„ ์—ด๋ฉด `lead` ์—์ด์ „ํŠธ๊ฐ€ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๋กœ ์‹คํ–‰๋œ๋‹ค. ์š”์ฒญ ์•ž์— ํƒœ๊ทธ๋ฅผ ๋ถ™์—ฌ ์Šคํ‚ฌ์„ ํ™œ์„ฑํ™”ํ•œ๋‹ค.
106
42
 
107
- <details>
108
- <summary>Hook</summary>
43
+ | ํƒœ๊ทธ | ๋™์ž‘ |
44
+ |---|---|
45
+ | `[plan]` | `nx-plan` ์Šคํ‚ฌ โ€” ๋‹ค๊ด€์  ๋ถ„์„๊ณผ ๊ฒฐ์ • ์ •๋ ฌ ๊ธฐ๋ฐ˜ ์‹คํ–‰ ๊ณ„ํš |
46
+ | `[auto-plan]` | `nx-auto-plan` ์Šคํ‚ฌ โ€” ์š”์ฒญ์„ ์ž๋™ ๋ถ„ํ•ดํ•ด ๊ณ„ํš |
47
+ | `[run]` | `nx-run` ์Šคํ‚ฌ โ€” ํ˜„์žฌ ๊ณ„ํš์˜ ํƒœ์Šคํฌ ์‹คํ–‰ |
48
+ | `[m] <๋ณธ๋ฌธ>` | `.nexus/memory/`์— ๊ตํ›ˆยท์ฐธ์กฐ ์ €์žฅ |
49
+ | `[m:gc]` | `.nexus/memory/` ์ •๋ฆฌ |
50
+ | `[d] <๊ฒฐ์ •>` | ํ™œ์„ฑ plan ์„ธ์…˜ ํ˜„์žฌ ์•ˆ๊ฑด์— ๋Œ€ํ•œ ๊ฒฐ์ • ๊ธฐ๋ก |
109
51
 
110
- Gate ๋‹จ์ผ ๋ชจ๋“ˆ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.
52
+ ## ์„ ํƒ: statusline
111
53
 
112
- | ์ด๋ฒคํŠธ | ์—ญํ•  |
113
- |--------|------|
114
- | `SessionStart` | `.nexus/` ๊ตฌ์กฐ ์ดˆ๊ธฐํ™”, agent-tracker ๋ฆฌ์…‹, `tool-log.jsonl` ์ดˆ๊ธฐํ™” |
115
- | `UserPromptSubmit` | ํƒœ๊ทธ ๊ฐ์ง€ โ†’ ๋ชจ๋“œ ํ™œ์„ฑํ™” + TASK_PIPELINE ์ฃผ์ž… + additionalContext ์•ˆ๋‚ด |
116
- | `PreToolUse` | Edit/Write: tasks.json ๋ฏธ์™„๋ฃŒ ์‹œ ์ฐจ๋‹จ |
117
- | `PostToolUse` | Edit/Write/NotebookEdit ํ˜ธ์ถœ ์‹œ ์„œ๋ธŒ์—์ด์ „ํŠธ์˜ ํŒŒ์ผ ์ˆ˜์ •์„ `tool-log.jsonl`์— append (agent_id ์žˆ์„ ๋•Œ๋งŒ) |
118
- | `SubagentStart` | ์—์ด์ „ํŠธ ์—ญํ• ๋ณ„ ์ฝ”์–ด ์ง€์‹ ์ธ๋ฑ์Šค ์ž๋™ ์ฃผ์ž… (lazy-read). ๊ธฐ์กด agent_id ์žฌ๋ฐœ ์‹œ `resume_count`/`last_resumed_at` upsert |
119
- | `SubagentStop` | ์—์ด์ „ํŠธ ์™„๋ฃŒ ๊ธฐ๋ก + `tool-log.jsonl` ์ง‘๊ณ„ โ†’ `files_touched` ์ฃผ์ž… |
120
- | `Stop` | pending ํƒœ์Šคํฌ ์žˆ์œผ๋ฉด ์ข…๋ฃŒ ์ฐจ๋‹จ. all completed๋ฉด nx_task_close ๊ฐ•์ œ |
121
- | `PostCompact` | ์„ธ์…˜ ์ƒํƒœ ์Šค๋ƒ…์ƒท (๋ชจ๋“œ, ํ”Œ๋žœ, ์—์ด์ „ํŠธ ํ˜„ํ™ฉ) |
54
+ ํ”Œ๋Ÿฌ๊ทธ์ธ์€ 2์ค„ statusline ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ•จ๊ป˜ ๋ฐฐํฌํ•œ๋‹ค. ์ฒซ ์ค„์€ `โ—†Nexus vX.Y.Z`ยท๋ชจ๋ธยทํ”„๋กœ์ ํŠธยทgit ๋ธŒ๋žœ์น˜(staged/unstaged), ๋‘˜์งธ ์ค„์€ ์ปจํ…์ŠคํŠธ ์‚ฌ์šฉ๋ฅ ๊ณผ 5h/7d ์‚ฌ์šฉ ํ•œ๋„ ๊ฒŒ์ด์ง€(๋ฆฌ์…‹๊นŒ์ง€ ๋‚จ์€ ์‹œ๊ฐ„). Claude ProยทMax OAuth ์„ธ์…˜์—์„œ๋งŒ 5h/7d๊ฐ€ ํ‘œ์‹œ๋˜๋ฉฐ, ๋กœ์ปฌ์˜ ์—ฌ๋Ÿฌ Claude ์„ธ์…˜์ด `~/.claude/.usage_cache`๋ฅผ ๊ณต์œ ํ•˜๋ฏ€๋กœ API ์ค‘๋ณต ํ˜ธ์ถœ ์—†์ด ๊ฒฝํ•ฉ์ด ๋ฐฉ์ง€๋œ๋‹ค.
122
55
 
123
- </details>
56
+ Claude Code๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์‚ฌ์šฉ์ž `statusLine`์„ ์ž๋™ ๋“ฑ๋กํ•˜๋Š” ๊ฑธ ํ—ˆ์šฉํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ, ๋ณ„๋„ CLI๋กœ ๋ฐฐํฌ๋œ `claude-nexus-statusline`์„ ๋ณธ์ธ์˜ `~/.claude/settings.json`์— ๋“ฑ๋กํ•œ๋‹ค.
124
57
 
125
- <details>
126
- <summary>ํ”„๋กœ์ ํŠธ ์ง€์‹</summary>
127
-
128
- `.nexus/`์— ํ”„๋กœ์ ํŠธ ์ง€์‹๊ณผ ๋Ÿฐํƒ€์ž„ ์ƒํƒœ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
58
+ ### bunx ๋˜๋Š” npx (์„ค์น˜ ๋ถˆํ•„์š”)
129
59
 
60
+ ```json
61
+ {
62
+ "statusLine": {
63
+ "type": "command",
64
+ "command": "bunx claude-nexus-statusline"
65
+ }
66
+ }
130
67
  ```
131
- .nexus/
132
- memory/ โ€” ํ•™์Šตํ•œ ๊ตํ›ˆ, ์ฐธ๊ณ  ์ž๋ฃŒ
133
- context/ โ€” ์„ค๊ณ„ ์›์น™, ์•„ํ‚คํ…์ฒ˜ ์ฒ ํ•™
134
- state/ โ€” plan.json, tasks.json
135
- rules/ โ€” ํ”„๋กœ์ ํŠธ ์ปค์Šคํ…€ ๊ทœ์น™
136
- history.json
137
- ```
138
-
139
- - `memory/`, `context/`, `rules/` โ€” git ์ถ”์ .
140
- - `state/` โ€” ๋Ÿฐํƒ€์ž„ ์ƒํƒœ. git ๋ฌด์‹œ.
141
- - `history.json` โ€” ์‚ฌ์ดํด ์•„์นด์ด๋ธŒ. git ์ถ”์ .
142
68
 
143
- </details>
69
+ `npx -y claude-nexus-statusline`๋„ ๋™์ผํ•˜๊ฒŒ ๋™์ž‘ํ•œ๋‹ค. ์ตœ์ดˆ ํ˜ธ์ถœ 1ํšŒ๋งŒ ํŒจํ‚ค์ง€๋ฅผ ๋กœ์ปฌ ์บ์‹œ์— ๋ฐ›๊ณ , ์ดํ›„ ํ˜ธ์ถœ์€ ์บ์‹œ์—์„œ ์ฆ‰์‹œ ์‹คํ–‰๋œ๋‹ค.
144
70
 
145
- <details>
146
- <summary>๋Ÿฐํƒ€์ž„ ์ƒํƒœ</summary>
71
+ ### ์ „์—ญ ์„ค์น˜ (๊ฐ€์žฅ ๋น ๋ฅธ ์‹œ์ž‘ ์‹œ๊ฐ„)
147
72
 
148
- `.nexus/state/` ๋””๋ ‰ํ† ๋ฆฌ์— ๋Ÿฐํƒ€์ž„ ์ƒํƒœ๊ฐ€ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. `.nexus/.gitignore`์˜ ํ™”์ดํŠธ๋ฆฌ์ŠคํŠธ์— ์˜ํ•ด ์ž๋™ ๋ฌด์‹œ๋ฉ๋‹ˆ๋‹ค.
149
-
150
- ```
151
- .nexus/state/
152
- โ”œโ”€โ”€ tasks.json โ† ํƒœ์Šคํฌ ๋ชฉ๋ก ([run] ์‚ฌ์ดํด)
153
- โ”œโ”€โ”€ plan.json โ† ํ”Œ๋žœ ์„ธ์…˜ ([plan] ์‚ฌ์ดํด)
154
- โ””โ”€โ”€ claude-nexus/ โ† harness-local ๋„ค์ž„์ŠคํŽ˜์ด์Šค
155
- โ”œโ”€โ”€ agent-tracker.json โ† ์„œ๋ธŒ์—์ด์ „ํŠธ ๋ผ์ดํ”„์‚ฌ์ดํด (resume_count, files_touched ํฌํ•จ)
156
- โ”œโ”€โ”€ tool-log.jsonl โ† ์„œ๋ธŒ์—์ด์ „ํŠธ Edit/Write/NotebookEdit ํ˜ธ์ถœ ๋กœ๊ทธ (append-only)
157
- โ””โ”€โ”€ artifacts/ โ† ์‚ฐ์ถœ๋ฌผ
73
+ ```bash
74
+ bun add -g claude-nexus # ๋˜๋Š” npm i -g claude-nexus
158
75
  ```
159
76
 
160
- </details>
161
-
162
- <details>
163
- <summary>์—์ด์ „ํŠธ Resume (resume_tier)</summary>
164
-
165
- ๊ฐ™์€ ๋ถ€๋ชจ ์„ธ์…˜ ๋‚ด์—์„œ ์ข…๋ฃŒ๋œ ์„œ๋ธŒ์—์ด์ „ํŠธ๋ฅผ `SendMessage`๋กœ ์žฌ๊ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—์ด์ „ํŠธ๋ณ„ `resume_tier` frontmatter๋กœ ์ •์ฑ…์„ ๋ถ„๋ฅ˜ํ•ฉ๋‹ˆ๋‹ค.
77
+ ```json
78
+ {
79
+ "statusLine": {
80
+ "type": "command",
81
+ "command": "claude-nexus-statusline"
82
+ }
83
+ }
84
+ ```
166
85
 
167
- | Tier | ์ •์ฑ… | ์—์ด์ „ํŠธ |
168
- |------|------|---------|
169
- | **persistent** | ๊ฐ™์€ ์ด์Šˆ ๋‚ด default-resume, ์ด์Šˆ ๊ฐ„ Lead ๋ช…์‹œ์  opt-in, ๋ฐ˜์ฆ/์žฌ๊ฒ€ํ† ๋Š” ๊ฐ•์ œ fresh | architect, designer, postdoc, strategist, researcher |
170
- | **bounded** | ๊ฐ™์€ artifact(ํŒŒ์ผ) ์—ฐ์† ์ž‘์—… ์‹œ conditional-resume, loop/feedback ์‚ฌ์ดํด์€ ๊ฐ•์ œ fresh | engineer, writer |
171
- | **ephemeral** | ํ•ญ์ƒ fresh spawn (๊ฒ€์ฆ ๋…๋ฆฝ์„ฑ ๋ณด์žฅ) | tester, reviewer |
86
+ ์—…๋ฐ์ดํŠธ๋Š” `bun update -g claude-nexus`(๋˜๋Š” `npm update -g claude-nexus`) ํ•œ ๋ฒˆ์œผ๋กœ ๋๋‚œ๋‹ค.
172
87
 
173
- **ํ™œ์„ฑํ™” ์š”๊ตฌ์‚ฌํ•ญ**: ํ™˜๊ฒฝ ๋ณ€์ˆ˜ `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`. ๋ฏธ๊ฐ์ง€ ์‹œ ์ž๋™ fresh spawn fallback (์—๋Ÿฌ ์—†์Œ).
88
+ ## ์š”๊ตฌ ์‚ฌํ•ญ
174
89
 
175
- **์ด๋ก  ๊ทผ๊ฑฐ**: ์—์ด์ „ํŠธ์˜ ๋ณธ์งˆ์  ์ž‘์—… ์ธต์œ„๋ฅผ ๋‘ surface๋กœ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. Reasoning surface(์—์ด์ „ํŠธ ์ปจํ…์ŠคํŠธ์—๋งŒ ์กด์žฌ)๊ฐ€ ์ง€๋ฐฐ์ ์ธ HOW/Researcher๋Š” `persistent`, Artifact surface(ํŒŒ์ผ ์‹œ์Šคํ…œ์— persist)์— ๊ฑธ์นœ Engineer/Writer๋Š” `bounded`, ๊ฒ€์ฆ ๋…๋ฆฝ์„ฑ์ด ํ’ˆ์งˆ ์ง€ํ‘œ์ธ Tester/Reviewer๋Š” `ephemeral`. ์ž์„ธํ•œ ๋‚ด์šฉ์€ `.nexus/memory/pattern-persistence-surface-theory.md`.
90
+ - Claude Code (์ตœ์‹ )
91
+ - Node.js 20 ์ด์ƒ (ํ›…ยทMCP ์„œ๋ฒ„ ์‹คํ–‰)
176
92
 
177
- **์—ฐ๊ณ„ ์ถ”์ **: `PostToolUse` ํ›…์ด ์„œ๋ธŒ์—์ด์ „ํŠธ์˜ ํŒŒ์ผ ์ˆ˜์ •์„ `tool-log.jsonl`์— append โ†’ `SubagentStop`์ด ์ง‘๊ณ„ํ•˜์—ฌ `agent-tracker.json`์˜ `files_touched`์— ์ฃผ์ž… โ†’ Lead๊ฐ€ bounded tier ์กฐ๊ฑด๋ถ€ resume ํŒ๋‹จ์— ํ™œ์šฉ.
93
+ ## ๋ผ์ด์„ ์Šค
178
94
 
179
- </details>
95
+ MIT