claude-nexus 0.26.0 → 0.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,7 +7,7 @@
7
7
  {
8
8
  "name": "claude-nexus",
9
9
  "description": "Agent orchestration plugin for Claude Code. Injects optimized context per agent role with minimal overhead.",
10
- "version": "0.26.0",
10
+ "version": "0.26.1",
11
11
  "author": {
12
12
  "name": "kih"
13
13
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-nexus",
3
- "version": "0.26.0",
3
+ "version": "0.26.1",
4
4
  "description": "Agent orchestration plugin for Claude Code — optimized context injection per role",
5
5
  "author": {
6
6
  "name": "kih"
package/VERSION CHANGED
@@ -1 +1 @@
1
- 0.26.0
1
+ 0.26.1
@@ -21020,6 +21020,8 @@ function findProjectRoot(startDir) {
21020
21020
  var PROJECT_ROOT = findProjectRoot();
21021
21021
  var NEXUS_ROOT = process.env.NEXUS_RUNTIME_ROOT || (0, import_path2.join)(PROJECT_ROOT, ".nexus");
21022
21022
  var STATE_ROOT = (0, import_path2.join)(NEXUS_ROOT, "state");
21023
+ var HARNESS_ID = "claude-nexus";
21024
+ var HARNESS_STATE_ROOT = (0, import_path2.join)(STATE_ROOT, HARNESS_ID);
21023
21025
  var MEMORY_ROOT = (0, import_path2.join)(NEXUS_ROOT, "memory");
21024
21026
  var CONTEXT_ROOT = (0, import_path2.join)(NEXUS_ROOT, "context");
21025
21027
  function ensureDir(dir) {
@@ -21056,6 +21058,7 @@ function registerContextTool(server2) {
21056
21058
  {},
21057
21059
  async () => {
21058
21060
  let teamStatus = { activeMode: null };
21061
+ let decisions = [];
21059
21062
  const tasksFile = (0, import_path3.join)(STATE_ROOT, "tasks.json");
21060
21063
  if ((0, import_fs3.existsSync)(tasksFile)) {
21061
21064
  try {
@@ -21063,20 +21066,12 @@ function registerContextTool(server2) {
21063
21066
  const tasks = Array.isArray(data.tasks) ? data.tasks : [];
21064
21067
  const total = tasks.length;
21065
21068
  const completed = tasks.filter((t) => t.status === "completed").length;
21066
- const pending = total - completed;
21069
+ const pending = tasks.filter((t) => t.status === "pending").length;
21067
21070
  teamStatus = {
21068
21071
  activeMode: "team",
21069
21072
  goal: data.goal ?? "",
21070
21073
  tasksSummary: { total, completed, pending }
21071
21074
  };
21072
- } catch {
21073
- }
21074
- }
21075
- let decisions = [];
21076
- const decisionsFile = (0, import_path3.join)(STATE_ROOT, "decisions.json");
21077
- if ((0, import_fs3.existsSync)(decisionsFile)) {
21078
- try {
21079
- const data = JSON.parse(await (0, import_promises.readFile)(decisionsFile, "utf-8"));
21080
21075
  decisions = Array.isArray(data.decisions) ? data.decisions : [];
21081
21076
  } catch {
21082
21077
  }
@@ -22039,12 +22034,12 @@ function registerPlanTools(server2) {
22039
22034
  "\uC548\uAC74 \uACB0\uC815 \uAE30\uB85D \u2014 [d] \uD0DC\uADF8\uB85C \uD2B8\uB9AC\uAC70",
22040
22035
  {
22041
22036
  issue_id: external_exports.number().describe("\uACB0\uC815\uD560 \uC548\uAC74 ID"),
22042
- summary: external_exports.string().describe("\uACB0\uC815 \uC694\uC57D"),
22037
+ decision: external_exports.string().describe("\uACB0\uC815 \uB0B4\uC6A9"),
22043
22038
  how_agents: external_exports.array(external_exports.string()).optional().describe('\uC774\uC288 \uBD84\uC11D\uC5D0 \uCC38\uC5EC\uD55C HOW \uC5D0\uC774\uC804\uD2B8 \uC774\uB984 \uBAA9\uB85D (\uC608: ["architect", "designer"])'),
22044
22039
  how_summary: external_exports.record(external_exports.string(), external_exports.string()).optional().describe('\uC5D0\uC774\uC804\uD2B8\uBCC4 \uD575\uC2EC \uC758\uACAC \uC694\uC57D (\uC608: { "architect": "...", "designer": "..." })'),
22045
22040
  how_agent_ids: external_exports.record(external_exports.string(), external_exports.string()).optional().describe('\uC5D0\uC774\uC804\uD2B8 \uC774\uB984 \u2192 agentId \uB9E4\uD551 (resume\uC6A9). \uC608: { "architect": "ac01819f1cd295cb8" }')
22046
22041
  },
22047
- async ({ issue_id, summary, how_agents, how_summary, how_agent_ids }) => {
22042
+ async ({ issue_id, decision, how_agents, how_summary, how_agent_ids }) => {
22048
22043
  const data = await readPlan();
22049
22044
  if (!data) {
22050
22045
  return textResult({ error: "No active plan session" });
@@ -22054,7 +22049,7 @@ function registerPlanTools(server2) {
22054
22049
  return textResult({ error: `Issue ${issue_id} not found` });
22055
22050
  }
22056
22051
  issue2.status = "decided";
22057
- issue2.decision = summary;
22052
+ issue2.decision = decision;
22058
22053
  if (how_agents !== void 0) issue2.how_agents = how_agents;
22059
22054
  if (how_summary !== void 0) issue2.how_summary = how_summary;
22060
22055
  if (how_agent_ids !== void 0) issue2.how_agent_ids = how_agent_ids;
@@ -22201,12 +22196,13 @@ function registerTaskTools(server2) {
22201
22196
  const tasksData = await readTasks();
22202
22197
  const tasks = tasksData?.tasks ?? [];
22203
22198
  const branch = getCurrentBranch();
22204
- let history = { cycles: [] };
22199
+ let history = { schema_version: "0.5", cycles: [] };
22205
22200
  if ((0, import_fs8.existsSync)(projectHistoryPath)) {
22206
22201
  const raw = await (0, import_promises3.readFile)(projectHistoryPath, "utf-8");
22207
22202
  history = JSON.parse(raw);
22208
22203
  }
22209
22204
  const cycle = {
22205
+ schema_version: "0.5",
22210
22206
  completed_at: (/* @__PURE__ */ new Date()).toISOString(),
22211
22207
  branch,
22212
22208
  plan,
@@ -22258,7 +22254,7 @@ function registerTaskTools(server2) {
22258
22254
  },
22259
22255
  async ({ query, last_n }) => {
22260
22256
  const historyPath = (0, import_path8.join)(NEXUS_ROOT, "history.json");
22261
- if (!(0, import_fs8.existsSync)(historyPath)) return textResult({ cycles: [], total: 0 });
22257
+ if (!(0, import_fs8.existsSync)(historyPath)) return textResult({ cycles: [], total: 0, showing: 0 });
22262
22258
  const raw = await (0, import_promises3.readFile)(historyPath, "utf-8");
22263
22259
  const history = JSON.parse(raw);
22264
22260
  let cycles = history.cycles || [];
@@ -22292,7 +22288,7 @@ function registerArtifactTools(server2) {
22292
22288
  content: external_exports.string().describe("File content to write")
22293
22289
  },
22294
22290
  async ({ filename, content }) => {
22295
- const artifactsDir = (0, import_path9.join)(STATE_ROOT, "artifacts");
22291
+ const artifactsDir = (0, import_path9.join)(HARNESS_STATE_ROOT, "artifacts");
22296
22292
  ensureDir(artifactsDir);
22297
22293
  const path = (0, import_path9.join)(artifactsDir, filename);
22298
22294
  await (0, import_promises4.writeFile)(path, content);