@moreih29/nexus-core 0.14.0 → 0.15.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.
@@ -104,6 +104,14 @@ export interface BuildOptions {
104
104
  strict: boolean;
105
105
  only?: string;
106
106
  }
107
+ export type DryRunKind = "managed" | "template";
108
+ export type DryRunReason = "managed" | "template-create" | "template-skipped" | "template-force-overwrite";
109
+ export interface DryRunRecord {
110
+ path: string;
111
+ kind: DryRunKind;
112
+ willWrite: boolean;
113
+ reason: DryRunReason;
114
+ }
107
115
  /**
108
116
  * Split a body.md file into frontmatter object and body text.
109
117
  * Throws on YAML parse failure.
@@ -145,10 +153,10 @@ export declare function resolveModel(modelTier: string, harness: Harness, capMat
145
153
  *
146
154
  * Managed: always overwrite (unless --dry-run)
147
155
  * Template: skip if exists (overwrite only with --force)
148
- * --dry-run: record path, no write
156
+ * --dry-run: record path and intent, no write
149
157
  * --strict: error if Managed path has untracked git modifications
150
158
  */
151
- export declare function applyOverwritePolicy(filePath: string, content: string, isManaged: boolean, opts: BuildOptions): void;
159
+ export declare function applyOverwritePolicy(filePath: string, content: string, isManaged: boolean, opts: BuildOptions): DryRunRecord;
152
160
  export declare function buildForClaude(assets: AssetEntry[], capMatrix: CapabilityMatrix, invocations: InvocationsMap, opts: BuildOptions): void;
153
161
  export declare function buildForOpencode(assets: AssetEntry[], capMatrix: CapabilityMatrix, invocations: InvocationsMap, opts: BuildOptions): void;
154
162
  export declare function buildForCodex(assets: AssetEntry[], capMatrix: CapabilityMatrix, invocations: InvocationsMap, opts: BuildOptions): void;
@@ -1 +1 @@
1
- {"version":3,"file":"build-agents.d.ts","sourceRoot":"","sources":["../../scripts/build-agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-agents.d.ts","sourceRoot":"","sources":["../../scripts/build-agents.ts"],"names":[],"mappings":"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"}
@@ -50,18 +50,19 @@ import { fileURLToPath } from "node:url";
50
50
  import { execSync } from "node:child_process";
51
51
  import { parse as parseYaml } from "yaml";
52
52
  import { expandInvocations } from "../src/shared/invocations.js";
53
+ import { findPackageRoot } from "../src/shared/package-root.js";
53
54
  // ---------------------------------------------------------------------------
54
55
  // Constants
55
56
  // ---------------------------------------------------------------------------
56
57
  const __dirname = dirname(fileURLToPath(import.meta.url));
57
- export const ROOT = resolve(__dirname, "..");
58
+ export const ROOT = findPackageRoot(__dirname);
58
59
  export const AGENTS_DIR = join(ROOT, "assets/agents");
59
60
  export const SKILLS_DIR = join(ROOT, "assets/skills");
60
61
  export const CAPABILITY_MATRIX_PATH = join(ROOT, "assets/capability-matrix.yml");
61
62
  export const TOOL_NAME_MAP_PATH = join(ROOT, "assets/tools/tool-name-map.yml");
62
63
  const HARNESSES = ["claude", "opencode", "codex"];
63
- // Track dry-run affected files
64
- const dryRunFiles = [];
64
+ // Track dry-run affected files (cleared after each buildAgents call)
65
+ const dryRunRecords = [];
65
66
  // ---------------------------------------------------------------------------
66
67
  // Frontmatter parsing
67
68
  // ---------------------------------------------------------------------------
@@ -238,17 +239,23 @@ export function resolveModel(modelTier, harness, capMatrix) {
238
239
  *
239
240
  * Managed: always overwrite (unless --dry-run)
240
241
  * Template: skip if exists (overwrite only with --force)
241
- * --dry-run: record path, no write
242
+ * --dry-run: record path and intent, no write
242
243
  * --strict: error if Managed path has untracked git modifications
243
244
  */
244
245
  export function applyOverwritePolicy(filePath, content, isManaged, opts) {
245
- if (opts.dryRun) {
246
- dryRunFiles.push(filePath);
247
- return;
248
- }
249
246
  if (isManaged) {
247
+ const record = {
248
+ path: filePath,
249
+ kind: "managed",
250
+ willWrite: true,
251
+ reason: "managed",
252
+ };
253
+ if (opts.dryRun) {
254
+ dryRunRecords.push(record);
255
+ return record;
256
+ }
250
257
  if (opts.strict) {
251
- // Check if the file is tracked by git and has local modifications
258
+ // managed 파일에 대해서만 git drift 검사 template skip은 strict 대상 아님
252
259
  if (existsSync(filePath)) {
253
260
  try {
254
261
  const rel = filePath.startsWith(ROOT)
@@ -266,20 +273,42 @@ export function applyOverwritePolicy(filePath, content, isManaged, opts) {
266
273
  catch (err) {
267
274
  if (String(err).includes("--strict:"))
268
275
  throw err;
269
- // git not available or file not tracked allow
276
+ // git 미설치 또는 미추적 파일허용
270
277
  }
271
278
  }
272
279
  }
273
280
  mkdirSync(dirname(filePath), { recursive: true });
274
281
  writeFileSync(filePath, content, "utf-8");
282
+ return record;
275
283
  }
276
284
  else {
277
285
  // Template: skip if exists unless --force
278
- if (existsSync(filePath) && !opts.force) {
279
- return;
286
+ const exists = existsSync(filePath);
287
+ let reason;
288
+ let willWrite;
289
+ if (exists && !opts.force) {
290
+ reason = "template-skipped";
291
+ willWrite = false;
292
+ }
293
+ else if (exists && opts.force) {
294
+ reason = "template-force-overwrite";
295
+ willWrite = true;
296
+ }
297
+ else {
298
+ reason = "template-create";
299
+ willWrite = true;
300
+ }
301
+ const record = { path: filePath, kind: "template", willWrite, reason };
302
+ if (opts.dryRun) {
303
+ dryRunRecords.push(record);
304
+ return record;
305
+ }
306
+ if (!willWrite) {
307
+ return record;
280
308
  }
281
309
  mkdirSync(dirname(filePath), { recursive: true });
282
310
  writeFileSync(filePath, content, "utf-8");
311
+ return record;
283
312
  }
284
313
  }
285
314
  // ---------------------------------------------------------------------------
@@ -347,7 +376,7 @@ function buildMarketplaceJson(agents) {
347
376
  }, null, 2) + "\n";
348
377
  }
349
378
  export function buildForClaude(assets, capMatrix, invocations, opts) {
350
- const baseDir = join(opts.targetDir, "claude");
379
+ const baseDir = opts.targetDir;
351
380
  const agentAssets = assets.filter((a) => a.type === "agent");
352
381
  const skillAssets = assets.filter((a) => a.type === "skill");
353
382
  // Template files: .claude-plugin/plugin.json and marketplace.json
@@ -438,15 +467,36 @@ function opencodePackageJson(agents) {
438
467
  version: "0.13.0",
439
468
  description: "Nexus agent suite for OpenCode",
440
469
  type: "module",
441
- main: "./src/index.ts",
470
+ main: "./src/plugin.ts",
442
471
  exports: {
443
- ".": "./src/index.ts",
472
+ ".": "./src/plugin.ts",
444
473
  },
445
474
  peerDependencies: {
446
475
  opencode: "*",
447
476
  },
477
+ dependencies: {
478
+ "@moreih29/nexus-core": "^0.14.0",
479
+ },
480
+ devDependencies: {
481
+ "@opencode-ai/plugin": "*",
482
+ typescript: "^5",
483
+ },
484
+ engines: {
485
+ node: ">=22",
486
+ },
448
487
  }, null, 2) + "\n");
449
488
  }
489
+ function opencodePluginTs() {
490
+ return [
491
+ `import type { Plugin } from "@opencode-ai/plugin";`,
492
+ `import { mountHooks } from "@moreih29/nexus-core/hooks/opencode-mount";`,
493
+ `import manifest from "@moreih29/nexus-core/hooks/opencode-manifest" with { type: "json" };`,
494
+ ``,
495
+ `export const OpencodeNexus: Plugin = async (ctx) => mountHooks(ctx, manifest);`,
496
+ `export default OpencodeNexus;`,
497
+ ``,
498
+ ].join("\n");
499
+ }
450
500
  function opencodeJsonFragment(agents) {
451
501
  // Fragment to be merged into opencode.json
452
502
  return (JSON.stringify({
@@ -473,12 +523,15 @@ function opencodeSkillMarkdown(asset, invocations) {
473
523
  return fmLines.join("\n") + expandedBody;
474
524
  }
475
525
  export function buildForOpencode(assets, capMatrix, invocations, opts) {
476
- const baseDir = join(opts.targetDir, "opencode");
526
+ const baseDir = opts.targetDir;
477
527
  const agentAssets = assets.filter((a) => a.type === "agent");
478
528
  const skillAssets = assets.filter((a) => a.type === "skill");
479
529
  // Template: package.json
480
530
  const pkgPath = join(baseDir, "package.json");
481
531
  applyOverwritePolicy(pkgPath, opencodePackageJson(agentAssets), false, opts);
532
+ // Template: src/plugin.ts (mountHooks 진입점)
533
+ const pluginTsPath = join(baseDir, "src", "plugin.ts");
534
+ applyOverwritePolicy(pluginTsPath, opencodePluginTs(), false, opts);
482
535
  // Managed: opencode.json.fragment
483
536
  const fragmentPath = join(baseDir, "opencode.json.fragment");
484
537
  applyOverwritePolicy(fragmentPath, opencodeJsonFragment(agentAssets), true, opts);
@@ -585,10 +638,103 @@ function codexConfigFragment(agents) {
585
638
  ];
586
639
  return lines.join("\n");
587
640
  }
641
+ function codexPackageJson() {
642
+ return (JSON.stringify({
643
+ name: "codex-nexus",
644
+ version: "0.13.0",
645
+ description: "Nexus agent suite for Codex CLI",
646
+ private: true,
647
+ scripts: {
648
+ sync: "bunx @moreih29/nexus-core sync --harness=codex --target=./",
649
+ "sync:dry": "bunx @moreih29/nexus-core sync --harness=codex --target=./ --dry-run",
650
+ build: "bun run sync",
651
+ validate: "bunx @moreih29/nexus-core validate",
652
+ list: "bunx @moreih29/nexus-core list",
653
+ "install-plugin": "bash install/install.sh",
654
+ },
655
+ devDependencies: {
656
+ "@moreih29/nexus-core": "^0.14.0",
657
+ },
658
+ engines: {
659
+ node: ">=22",
660
+ },
661
+ }, null, 2) + "\n");
662
+ }
663
+ function codexInstallSh() {
664
+ return [
665
+ `#!/usr/bin/env bash`,
666
+ `# Codex plugin installer — block-marker merge pattern.`,
667
+ `# nexus-core Model 2: wrapper owns integration seams.`,
668
+ `# Merges config.fragment.toml into ~/.codex/config.toml,`,
669
+ `# copies native agent TOMLs to ~/.codex/agents/,`,
670
+ `# and merges AGENTS.fragment.md into ~/.codex/AGENTS.md.`,
671
+ `set -euo pipefail`,
672
+ ``,
673
+ `PLUGIN_NAME="\${PLUGIN_NAME:-codex-nexus}"`,
674
+ `CODEX_HOME="\${CODEX_HOME:-\$HOME/.codex}"`,
675
+ `SCRIPT_DIR="\$(cd "\$(dirname "\${BASH_SOURCE[0]}")" && pwd)"`,
676
+ `REPO_ROOT="\$(cd "\$SCRIPT_DIR/.." && pwd)"`,
677
+ ``,
678
+ `mkdir -p "\$CODEX_HOME" "\$CODEX_HOME/agents" "\$CODEX_HOME/plugins"`,
679
+ ``,
680
+ `# 1. config.toml — block-marker merge`,
681
+ `MARKER_BEGIN="# BEGIN \${PLUGIN_NAME}"`,
682
+ `MARKER_END="# END \${PLUGIN_NAME}"`,
683
+ `CONFIG="\$CODEX_HOME/config.toml"`,
684
+ `CONFIG_FRAGMENT="\$SCRIPT_DIR/config.fragment.toml"`,
685
+ ``,
686
+ `touch "\$CONFIG"`,
687
+ `if grep -q "\${MARKER_BEGIN}" "\$CONFIG" 2>/dev/null; then`,
688
+ ` sed -i.bak "/\${MARKER_BEGIN}/,/\${MARKER_END}/d" "\$CONFIG"`,
689
+ `fi`,
690
+ `{`,
691
+ ` echo ""`,
692
+ ` echo "\${MARKER_BEGIN}"`,
693
+ ` cat "\$CONFIG_FRAGMENT"`,
694
+ ` echo "\${MARKER_END}"`,
695
+ `} >> "\$CONFIG"`,
696
+ ``,
697
+ `# 2. native agent TOMLs`,
698
+ `cp "\$REPO_ROOT"/agents/*.toml "\$CODEX_HOME/agents/" 2>/dev/null || true`,
699
+ ``,
700
+ `# 3. plugin body → ~/.codex/plugins/<name>/`,
701
+ `PLUGIN_DEST="\$CODEX_HOME/plugins/\${PLUGIN_NAME}"`,
702
+ `rm -rf "\$PLUGIN_DEST"`,
703
+ `mkdir -p "\$PLUGIN_DEST"`,
704
+ `cp -R "\$REPO_ROOT"/plugin/. "\$PLUGIN_DEST/"`,
705
+ ``,
706
+ `# 4. AGENTS.md — block-marker merge`,
707
+ `AGENTS_TARGET="\$CODEX_HOME/AGENTS.md"`,
708
+ `AGENTS_FRAGMENT="\$SCRIPT_DIR/AGENTS.fragment.md"`,
709
+ `FRAG_BEGIN="<!-- nexus-core:lead:start -->"`,
710
+ `FRAG_END="<!-- nexus-core:lead:end -->"`,
711
+ ``,
712
+ `if [ -f "\$AGENTS_FRAGMENT" ]; then`,
713
+ ` touch "\$AGENTS_TARGET"`,
714
+ ` if grep -q "\${FRAG_BEGIN}" "\$AGENTS_TARGET" 2>/dev/null; then`,
715
+ ` awk -v begin="\${FRAG_BEGIN}" -v end="\${FRAG_END}" '`,
716
+ ` \$0 ~ begin { skip=1; next }`,
717
+ ` \$0 ~ end { skip=0; next }`,
718
+ ` !skip { print }`,
719
+ ` ' "\$AGENTS_TARGET" > "\$AGENTS_TARGET.tmp" && mv "\$AGENTS_TARGET.tmp" "\$AGENTS_TARGET"`,
720
+ ` fi`,
721
+ ` cat "\$AGENTS_FRAGMENT" >> "\$AGENTS_TARGET"`,
722
+ `fi`,
723
+ ``,
724
+ `echo "Installed \${PLUGIN_NAME} → \$CODEX_HOME"`,
725
+ ``,
726
+ ].join("\n");
727
+ }
588
728
  export function buildForCodex(assets, capMatrix, invocations, opts) {
589
- const baseDir = join(opts.targetDir, "codex");
729
+ const baseDir = opts.targetDir;
590
730
  const agentAssets = assets.filter((a) => a.type === "agent");
591
731
  const skillAssets = assets.filter((a) => a.type === "skill");
732
+ // Template: package.json (wrapper meta)
733
+ const pkgPath = join(baseDir, "package.json");
734
+ applyOverwritePolicy(pkgPath, codexPackageJson(), false, opts);
735
+ // Template: install/install.sh (block-marker merge installer)
736
+ const installShPath = join(baseDir, "install", "install.sh");
737
+ applyOverwritePolicy(installShPath, codexInstallSh(), false, opts);
592
738
  // Managed: plugin/.codex-plugin/plugin.json
593
739
  const pluginJsonPath = join(baseDir, "plugin", ".codex-plugin", "plugin.json");
594
740
  applyOverwritePolicy(pluginJsonPath, codexPluginJson(agentAssets), true, opts);
@@ -714,12 +860,27 @@ export async function buildAgents(opts) {
714
860
  }
715
861
  }
716
862
  if (opts.dryRun) {
717
- console.log(`[build-agents] Affected files (${dryRunFiles.length}):`);
718
- for (const f of dryRunFiles) {
719
- console.log(` ${f}`);
863
+ const managed = dryRunRecords.filter((r) => r.reason === "managed").length;
864
+ const templateCreate = dryRunRecords.filter((r) => r.reason === "template-create").length;
865
+ const templateSkipped = dryRunRecords.filter((r) => r.reason === "template-skipped").length;
866
+ const templateForce = dryRunRecords.filter((r) => r.reason === "template-force-overwrite").length;
867
+ console.log(`[build-agents] ${managed} managed, ${templateCreate} template-create, ${templateSkipped} template-skipped, ${templateForce} template-force-overwrite`);
868
+ for (const r of dryRunRecords) {
869
+ if (r.kind === "managed") {
870
+ console.log(` [M] ${r.path}`);
871
+ }
872
+ else if (r.reason === "template-skipped") {
873
+ console.log(` [T]{skip} ${r.path}`);
874
+ }
875
+ else if (r.reason === "template-force-overwrite") {
876
+ console.log(` [T]{force} ${r.path}`);
877
+ }
878
+ else {
879
+ console.log(` [T] ${r.path}`);
880
+ }
720
881
  }
721
- // Clear for next run
722
- dryRunFiles.length = 0;
882
+ // 다음 호출을 위해 초기화
883
+ dryRunRecords.length = 0;
723
884
  return;
724
885
  }
725
886
  console.log(`[build-agents] Done`);
@@ -1 +1 @@
1
- {"version":3,"file":"build-agents.js","sourceRoot":"","sources":["../../scripts/build-agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-agents.js","sourceRoot":"","sources":["../../scripts/build-agents.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-hooks.d.ts","sourceRoot":"","sources":["../../scripts/build-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAuhBH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA0BhD"}
1
+ {"version":3,"file":"build-hooks.d.ts","sourceRoot":"","sources":["../../scripts/build-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAwhBH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA0BhD"}
@@ -14,15 +14,16 @@
14
14
  */
15
15
  import { HookMetaSchema } from "../src/hooks/types.js";
16
16
  import { readFileSync, readdirSync, existsSync, mkdirSync, writeFileSync, } from "node:fs";
17
- import { join, resolve, dirname } from "node:path";
17
+ import { join, dirname } from "node:path";
18
18
  import { fileURLToPath } from "node:url";
19
19
  import { execSync } from "node:child_process";
20
20
  import { parse as parseYaml } from "yaml";
21
+ import { findPackageRoot } from "../src/shared/package-root.js";
21
22
  // ---------------------------------------------------------------------------
22
23
  // Constants
23
24
  // ---------------------------------------------------------------------------
24
25
  const __dirname = dirname(fileURLToPath(import.meta.url));
25
- const ROOT = resolve(__dirname, "..");
26
+ const ROOT = findPackageRoot(__dirname);
26
27
  const HOOKS_DIR = join(ROOT, "assets/hooks");
27
28
  const CAPABILITY_MATRIX_PATH = join(HOOKS_DIR, "capability-matrix.yml");
28
29
  const TOOL_NAME_MAP_PATH = join(ROOT, "assets/tools/tool-name-map.yml");
@@ -1 +1 @@
1
- {"version":3,"file":"build-hooks.js","sourceRoot":"","sources":["../../scripts/build-hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-hooks.js","sourceRoot":"","sources":["../../scripts/build-hooks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../scripts/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;GAkBG;AAYH,eAAO,MAAM,IAAI,QAA2B,CAAC;AAC7C,eAAO,MAAM,UAAU,QAAuB,CAAC;AAM/C,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,CA8BtD;AA4FD,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B3D;AAMD,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+B3D;AAsBD,UAAU,SAAS;IACjB,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,kBAAkB,IAAI,SAAS,EAAE,CAsDhD;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B3D;AAMD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,eAAe,IAAI,gBAAgB,CAwFlD;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyB/D;AAMD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAW1D;AAMD,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BxD"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../scripts/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;GAkBG;AAaH,eAAO,MAAM,IAAI,QAA6B,CAAC;AAC/C,eAAO,MAAM,UAAU,QAAuB,CAAC;AAM/C,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,CA8BtD;AA4FD,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B3D;AAMD,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+B3D;AAsBD,UAAU,SAAS;IACjB,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,kBAAkB,IAAI,SAAS,EAAE,CAsDhD;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B3D;AAMD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,eAAe,IAAI,gBAAgB,CAwFlD;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyB/D;AAMD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAW1D;AAMD,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BxD"}
@@ -18,15 +18,16 @@
18
18
  * Flags:
19
19
  * --help, -h Show help for the current command
20
20
  */
21
- import { existsSync, readdirSync, readFileSync } from "node:fs";
21
+ import { existsSync, readdirSync, readFileSync, realpathSync } from "node:fs";
22
22
  import { join, resolve, dirname } from "node:path";
23
- import { fileURLToPath } from "node:url";
23
+ import { fileURLToPath, pathToFileURL } from "node:url";
24
24
  import { parse as parseYaml } from "yaml";
25
+ import { findPackageRoot } from "../src/shared/package-root.js";
25
26
  // ---------------------------------------------------------------------------
26
27
  // Constants
27
28
  // ---------------------------------------------------------------------------
28
29
  const __dirname = dirname(fileURLToPath(import.meta.url));
29
- export const ROOT = resolve(__dirname, "..");
30
+ export const ROOT = findPackageRoot(__dirname);
30
31
  export const ASSETS_DIR = join(ROOT, "assets");
31
32
  export function parseFlags(argv) {
32
33
  const flags = {
@@ -456,9 +457,23 @@ export async function main(argv) {
456
457
  // ---------------------------------------------------------------------------
457
458
  // Direct execution
458
459
  // ---------------------------------------------------------------------------
459
- if (import.meta.url === `file://${process.argv[1]}` ||
460
- process.argv[1]?.endsWith("cli.ts") ||
461
- process.argv[1]?.endsWith("cli.js")) {
460
+ function isEntryPoint() {
461
+ const argv1 = process.argv[1];
462
+ if (!argv1)
463
+ return false;
464
+ if (import.meta.url === `file://${argv1}`)
465
+ return true;
466
+ if (argv1.endsWith("cli.ts") || argv1.endsWith("cli.js"))
467
+ return true;
468
+ // bin symlink (예: node_modules/.bin/nexus-core) — realpath로 해소 후 비교
469
+ try {
470
+ return import.meta.url === pathToFileURL(realpathSync(argv1)).href;
471
+ }
472
+ catch {
473
+ return false;
474
+ }
475
+ }
476
+ if (isEntryPoint()) {
462
477
  main(process.argv.slice(2)).catch((err) => {
463
478
  process.stderr.write(`[nexus-core] FATAL: ${String(err)}\n`);
464
479
  process.exit(1);
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../scripts/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../scripts/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 주어진 디렉토리에서 dirname 상향 탐색하며 package.json을 찾아
3
+ * 패키지 루트 디렉토리를 반환한다. 루트 fs까지 도달해도 못 찾으면 throw.
4
+ */
5
+ export declare function findPackageRoot(startDir: string): string;
6
+ //# sourceMappingURL=package-root.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-root.d.ts","sourceRoot":"","sources":["../../../src/shared/package-root.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUxD"}
@@ -0,0 +1,19 @@
1
+ import { existsSync } from "node:fs";
2
+ import { dirname, join } from "node:path";
3
+ /**
4
+ * 주어진 디렉토리에서 dirname 상향 탐색하며 package.json을 찾아
5
+ * 패키지 루트 디렉토리를 반환한다. 루트 fs까지 도달해도 못 찾으면 throw.
6
+ */
7
+ export function findPackageRoot(startDir) {
8
+ let current = startDir;
9
+ while (true) {
10
+ if (existsSync(join(current, "package.json")))
11
+ return current;
12
+ const parent = dirname(current);
13
+ if (parent === current) {
14
+ throw new Error(`findPackageRoot: package.json not found walking up from ${startDir}`);
15
+ }
16
+ current = parent;
17
+ }
18
+ }
19
+ //# sourceMappingURL=package-root.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-root.js","sourceRoot":"","sources":["../../../src/shared/package-root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC9C,IAAI,OAAO,GAAG,QAAQ,CAAC;IACvB,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAAE,OAAO,OAAO,CAAC;QAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,2DAA2D,QAAQ,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -0,0 +1,271 @@
1
+ # harness-io 계약
2
+
3
+ > **규범 문서 (Normative).** `@moreih29/nexus-core`와 3 하네스 consumer plugin repo 간 I/O 계약의 SSOT.
4
+ > 튜토리얼·사용법은 [`docs/plugin-guide.md`](../plugin-guide.md) 참조.
5
+
6
+ ---
7
+
8
+ ## 1. 스코프와 버전 정책
9
+
10
+ ### 1-1. 문서 역할
11
+
12
+ 본 문서는 nexus-core가 외부 consumer(3 하네스 plugin repo)에게 보장하는 **계약**을 정의한다. 하네스별 설치 절차·코드 예시·온보딩 흐름은 이 문서의 범위 밖이다.
13
+
14
+ ### 1-2. semver 3축 분리
15
+
16
+ | 축 | 대상 | 변경 등급 |
17
+ |---|---|---|
18
+ | (i) Runtime exports | §2 전체 — 서브패스 API, 타입 시그니처 | 추가: minor / 제거·타입 축소: major |
19
+ | (ii) sync 출력 set | §4 전체 — 경로·파일명·Managed/Template 분류 | 추가: minor / 제거·이동·분류 전환: major |
20
+ | (iii) bin 인터페이스 | §3 전체 — 서브커맨드명·주요 플래그 시맨틱 | 추가: minor / 제거·시맨틱 변경: major |
21
+
22
+ 세 축의 변경 등급은 독립적으로 산출한다. 파일 콘텐츠 내부 구조(프론트매터 스키마 등)는 향후 `assets/schema/`에 별도 버전 문서로 기술될 예정이며, 본 계약은 해당 디렉터리를 스키마 호환 주소로 지정한다. 현재는 agent·skill frontmatter 스키마 파일이 미작성 상태로, 작성 시점에 §8-4 참조.
23
+
24
+ ---
25
+
26
+ ## 2. Runtime exports 계약
27
+
28
+ 소비자가 `@moreih29/nexus-core`의 서브패스로 import할 수 있는 런타임 API 전수. `package.json exports` 필드가 기계 판독 SSOT이며 본 섹션은 그 해석을 제공한다.
29
+
30
+ ### 2-1. 루트 (`"."`)
31
+
32
+ ```
33
+ null
34
+ ```
35
+
36
+ barrel 파일이 존재하지 않는다. `import "@moreih29/nexus-core"`는 항상 오류다. 서브패스를 통해서만 접근 가능하다.
37
+
38
+ ### 2-2. 공개 API 서브패스
39
+
40
+ | 서브패스 | 형태 | 제공 내용 |
41
+ |---|---|---|
42
+ | `@moreih29/nexus-core/mcp` | types + import | MCP stdio 서버 모듈 |
43
+ | `@moreih29/nexus-core/hooks/opencode-mount` | types + import | `mountHooks` 함수 및 관련 타입 |
44
+ | `@moreih29/nexus-core/hooks/runtime` | types + import | dispatcher helpers 및 관련 타입 |
45
+ | `@moreih29/nexus-core/hooks/opencode-manifest` | JSON 단일 경로 | hook manifest JSON (Node 22+ `with { type: "json" }` import) |
46
+
47
+ `hooks/opencode-manifest`는 조건부 export 객체가 아닌 단일 문자열 경로로 선언된다. 소비자는 반드시 `with { type: "json" }` import attribute와 함께 사용해야 한다. 이는 Node.js 22 이상을 요구한다(§3 참조).
48
+
49
+ ### 2-3. 자산 와일드카드 서브패스 (read-only)
50
+
51
+ | 서브패스 패턴 | 실제 경로 | 용도 |
52
+ |---|---|---|
53
+ | `@moreih29/nexus-core/agents/*` | `assets/agents/*` | 에이전트 원본 |
54
+ | `@moreih29/nexus-core/skills/*` | `assets/skills/*` | 스킬 원본 |
55
+ | `@moreih29/nexus-core/assets/*` | `assets/*` | 기타 자산 |
56
+ | `@moreih29/nexus-core/docs/*` | `docs/*` | 문서 |
57
+
58
+ 와일드카드 서브패스는 읽기 전용 참조 용도다. 소비자가 이 경로의 파일을 수정하면 다음 패키지 업그레이드 시 변경이 소실된다.
59
+
60
+ ---
61
+
62
+ ## 3. bin 계약
63
+
64
+ | 실행 파일 | 진입점 | 역할 |
65
+ |---|---|---|
66
+ | `nexus-core` | `./dist/scripts/cli.js` | 빌드 타임 CLI |
67
+ | `nexus-mcp` | `./dist/src/mcp/server.js` | 런타임 stdio MCP 서버 |
68
+
69
+ ### 3-1. `nexus-core` 서브커맨드
70
+
71
+ | 서브커맨드 | 역할 |
72
+ |---|---|
73
+ | `sync` | 하네스별 자산 동기화 (§4 참조) |
74
+ | `init` | 신규 plugin repo 스캐폴드 초기화 |
75
+ | `list` | 에이전트·스킬·훅 목록 출력 |
76
+ | `validate` | `assets/` frontmatter 및 YAML 유효성 검사 |
77
+ | `mcp` | MCP stdio 서버 직접 실행 (`nexus-mcp`와 동일) |
78
+
79
+ 서브커맨드 시맨틱 변경 및 제거는 major breaking이다.
80
+
81
+ ### 3-2. engines 요구사항
82
+
83
+ `engines.node >= 22` — `import ... with { type: "json" }` (import attributes) 지원 최소 버전. 이 요구사항은 runtime exports §2와 연동되며 하향 조정은 major breaking이다.
84
+
85
+ ---
86
+
87
+ ## 4. sync 출력 set — 3 하네스별 규범
88
+
89
+ **공통 규칙**: `nexus-core sync --harness=<x> --target=<dir>` 실행 시 `<dir>` 직속에 자산을 기록한다. harness 이름 prefix를 붙이지 않는다. flat 출력이 기본값이며 별도 플래그 없이 적용된다.
90
+
91
+ multi-harness 빌드가 필요한 경우 소비자가 `--harness`와 `--target`을 조합해 3회 호출한다.
92
+
93
+ ---
94
+
95
+ ### 4-1. Claude
96
+
97
+ **하네스 루트 = plugin 루트.** Claude Code marketplace의 `source: "./"` 직접 정합.
98
+
99
+ | 경로 (target 루트 기준) | 분류 | 용도 |
100
+ |---|---|---|
101
+ | `.claude-plugin/plugin.json` | Template | 플러그인 메타 — 저자 편집 허용 |
102
+ | `.claude-plugin/marketplace.json` | Template | 마켓플레이스 메타 |
103
+ | `agents/<name>.md` | Managed | 하네스 네이티브 에이전트 마크다운 |
104
+ | `skills/<name>/SKILL.md` | Managed | 스킬 마크다운 |
105
+ | `settings.json`[^claude-primary] | Managed | `{ "agent": "<primary>" }` — main thread 시스템 프롬프트 주입 fragment |
106
+
107
+ [^claude-primary]: primary agent가 1개 이상 있을 때만 생성. primary 에이전트 부재 시 파일을 생성하지 않으며 기존 파일도 삭제하지 않는다. §6-1 Managed 정의의 조건부 생성 예외 참조.
108
+
109
+ **fragment 경로**: `settings.json`은 core가 생성하는 fragment다. `{ "agent": "<primary>" }` 키 하나를 포함한다.
110
+
111
+ **Consumer(claude-nexus wrapper) 책임**: marketplace 등록 · version bump · git push. core는 `settings.json` fragment 생성까지만 담당한다. fragment의 consumer 환경 실제 적용은 Claude Code 런타임이 처리하며 wrapper가 그 경로를 보장한다.
112
+
113
+ ---
114
+
115
+ ### 4-2. OpenCode
116
+
117
+ **npm 패키지 루트 = repo 루트.**
118
+
119
+ | 경로 (target 루트 기준) | 분류 | 용도 |
120
+ |---|---|---|
121
+ | `package.json` | Template | npm 패키지 메타 — 저자 name·version 편집 |
122
+ | `src/plugin.ts` | **Template (신규)** | mountHooks 진입점 보일러플레이트 |
123
+ | `opencode.json.fragment` | Managed | consumer에 merge될 agents 배열 fragment |
124
+ | `src/index.ts` | Managed | 에이전트 export 인덱스 |
125
+ | `src/agents/<name>.ts` | Managed | 에이전트 TS 모듈 |
126
+ | `.opencode/skills/<name>/SKILL.md` | Managed | 스킬 마크다운 |
127
+
128
+ **fragment 경로**: `opencode.json.fragment`는 core가 생성하는 agents 배열 fragment다. 이 파일의 consumer `opencode.json` merge는 wrapper(opencode-nexus)의 postinstall 스크립트가 수행한다.
129
+
130
+ **Skill discovery 경계 (결정 #7)**: core는 consumer 프로젝트의 `.opencode/skills/<name>/SKILL.md` 파일 존재를 보장한다. `node_modules/<plugin>/.opencode/skills/` 자동 감지 여부는 OpenCode 런타임 영역으로 본 계약 외부다. wrapper(opencode-nexus)는 postinstall 스크립트로 패키지 내부 `.opencode/skills/`를 consumer 경로로 복사할 책임을 진다.
131
+
132
+ **Consumer(opencode-nexus wrapper) 책임**: `src/plugin.ts` 실 진입점 유지 · `opencode.json.fragment` consumer merge · postinstall skill copy · npm publish.
133
+
134
+ ---
135
+
136
+ ### 4-3. Codex
137
+
138
+ **wrapper repo 루트 = installer + plugin body 번들.**
139
+
140
+ | 경로 (target 루트 기준) | 분류 | 용도 |
141
+ |---|---|---|
142
+ | `package.json` | **Template (신규)** | wrapper 메타 |
143
+ | `install/install.sh` | **Template (신규)** | block-marker 머지 설치 스크립트 |
144
+ | `plugin/.codex-plugin/plugin.json` | Managed | plugin body 메타 (`~/.codex/plugins/<name>/`로 설치) |
145
+ | `plugin/skills/<name>/SKILL.md` | Managed | 스킬 마크다운 (plugin body 내부) |
146
+ | `agents/<name>.toml` | Managed | native agent TOML (`~/.codex/agents/`로 설치) |
147
+ | `prompts/<name>.md` | Managed | 에이전트 프롬프트 마크다운 |
148
+ | `install/config.fragment.toml` | Managed | `~/.codex/config.toml`에 merge될 `[mcp_servers]` fragment |
149
+ | `install/AGENTS.fragment.md`[^codex-primary] | Managed | `~/.codex/AGENTS.md`에 merge될 primary agent body (block-marker) |
150
+
151
+ [^codex-primary]: primary agent가 1개 이상 있을 때만 생성. primary 에이전트 부재 시 파일을 생성하지 않으며 기존 파일도 삭제하지 않는다. §6-1 Managed 정의의 조건부 생성 예외 참조.
152
+
153
+ **fragment 경로**:
154
+ - `install/config.fragment.toml` — MCP 서버 등록 TOML fragment
155
+ - `install/AGENTS.fragment.md` — primary agent body를 `<!-- nexus-core:<agent-id>:start -->` / `<!-- nexus-core:<agent-id>:end -->` 마커로 감싼 fragment. `<agent-id>`는 primary agent의 frontmatter `id`이며 기본값은 `lead`이다
156
+
157
+ **도메인 서브디렉터리 구조**: Codex 내부 `plugin/`·`agents/`·`install/` 서브디렉터리는 Codex 생태계가 `~/.codex/plugins/`·`~/.codex/agents/`·`~/.codex/config.toml` 3곳에 분리 설치되는 구조를 반영한다. 이 도메인 prefix는 flat 출력 규칙(§4 공통 규칙)과 직교하며 유지된다.
158
+
159
+ **Consumer(codex-nexus wrapper) 책임**: `install.sh` 편집·실행 · block-marker merge(`config.toml`·`AGENTS.md`) · npm 혹은 GitHub source 배포 선택.
160
+
161
+ ---
162
+
163
+ ## 5. Ownership line (Model 2 통일)
164
+
165
+ 3 하네스 모두 동일한 ownership 모델을 따른다. 철학 §3 비목표("플러그인 자체의 빌드·배포·실행 — 하네스 책임")의 규범화다.
166
+
167
+ ### 5-1. core 책임
168
+
169
+ 1. agents·skills 원본 생성 (`assets/agents/*`, `assets/skills/*`)
170
+ 2. 하네스 네이티브 자산 빌드 — agents (`.md`/`.ts`/`.toml`), skills (`SKILL.md`), plugin manifest
171
+ 3. Integration fragment 제공:
172
+ - Claude: `settings.json`
173
+ - OpenCode: `opencode.json.fragment`
174
+ - Codex: `install/config.fragment.toml`·`install/AGENTS.fragment.md`
175
+ 4. Runtime exports (`mountHooks`, manifest JSON, mcp 서버)
176
+
177
+ ### 5-2. wrapper 책임
178
+
179
+ 1. Fragment의 consumer 환경 실제 머지 로직 — block-marker·conditional merge·OS 경로 해석
180
+ 2. 배포 — marketplace 등록·npm publish·`install.sh` 실행
181
+ 3. Plugin 진입점 코드 — OpenCode `src/plugin.ts`·Codex `install/install.sh`
182
+ 4. Version·changelog 관리
183
+
184
+ core는 merge 로직·배포·OS별 경로 해석을 떠안지 않는다.
185
+
186
+ ---
187
+
188
+ ## 6. Template vs Managed 정책
189
+
190
+ ### 6-1. 분류 정의
191
+
192
+ | 분류 | 쓰기 시점 | 소비자 편집 보존 여부 |
193
+ |---|---|---|
194
+ | **Managed** | 매 `sync` 실행마다 덮어씀 | 보존되지 않음 |
195
+ | **Template** | 파일 부재 시에만 생성. 존재 시 skip | 보존됨 (`--force` 지정 시 제외) |
196
+
197
+ **조건부 생성 예외**: §4에서 각주로 명시한 Managed 파일(`settings.json`, `install/AGENTS.fragment.md`)은 primary agent가 1개 이상 존재할 때만 생성된다. primary 부재 시 생성 자체가 일어나지 않으며, 기존 파일이 있어도 삭제하지 않는다. 이 파일들은 "생성되면 Managed" 규칙을 따른다.
198
+
199
+ ### 6-2. 플래그 시맨틱
200
+
201
+ | 플래그 | 동작 |
202
+ |---|---|
203
+ | `--dry-run` | 실제 쓰기 없이 변경될 파일 목록과 summary만 출력 |
204
+ | `--force` | Template 파일도 강제 덮어씀 |
205
+ | `--strict` | Managed 파일에 로컬 drift가 있으면 exit 1. Template skip은 정상 통과(exit 0) |
206
+
207
+ ### 6-3. dry-run 출력 포맷
208
+
209
+ 파일별 prefix:
210
+
211
+ | prefix | 의미 |
212
+ |---|---|
213
+ | `[M]` | Managed — 이번 sync에서 쓰여짐 |
214
+ | `[T]` | Template — 신규 생성 |
215
+ | `[T]{skip}` | Template — 파일 존재로 건너뜀 |
216
+ | `[T]{force}` | Template — `--force`로 덮어씀 |
217
+
218
+ Summary 라인 포맷:
219
+
220
+ ```
221
+ [build-agents] N managed, M template-create, K template-skipped, L template-force-overwrite
222
+ ```
223
+
224
+ ### 6-4. Managed·Template 분류 변경 정책
225
+
226
+ Managed에서 Template으로, 또는 Template에서 Managed로의 분류 전환은 major breaking이다(§8 참조).
227
+
228
+ ---
229
+
230
+ ## 7. 예약된 확장점
231
+
232
+ ### 7-1. consumer-manifest.json (현재 미도입, 결정 #2 유보)
233
+
234
+ 현재 3 wrapper 어느 쪽도 `managed_outputs`·`requires`·`primary_agents` 등 기계 판독 필드를 소비하는 코드가 없다. 소비처가 없는 상태에서 스키마를 동결하면 형식적 1.0 고정과 드리프트 위험이 발생한다.
235
+
236
+ **현재 SSOT**: `package.json exports`(runtime 계약) + 본 문서 `docs/contract/harness-io.md`(빌드 산출물 계약) 두 축으로 충분하다.
237
+
238
+ **재검토 조건**: 자동화가 `managed_outputs`·`requires` 등 필드를 실제로 기계 소비하기 시작하는 시점에 별도 안건으로 재검토한다. 그 전에는 본 문서가 SSOT 역할을 유지한다.
239
+
240
+ ---
241
+
242
+ ## 8. 변경 관리
243
+
244
+ ### 8-1. sync 출력 set (§4) 변경 등급
245
+
246
+ | 변경 유형 | 등급 |
247
+ |---|---|
248
+ | 경로 추가 | minor |
249
+ | 경로 제거·이동 | major breaking |
250
+ | Managed ↔ Template 분류 전환 | major breaking |
251
+
252
+ ### 8-2. Runtime exports (§2) 변경 등급
253
+
254
+ | 변경 유형 | 등급 |
255
+ |---|---|
256
+ | 새 서브패스 추가 | minor |
257
+ | 서브패스 제거 | major breaking |
258
+ | 타입 시그니처 축소·호환 불가 변경 | major breaking |
259
+ | 타입 확장(호환 유지) | minor 또는 patch |
260
+
261
+ ### 8-3. bin 인터페이스 (§3) 변경 등급
262
+
263
+ | 변경 유형 | 등급 |
264
+ |---|---|
265
+ | 새 서브커맨드·플래그 추가 | minor |
266
+ | 서브커맨드·플래그 제거 | major breaking |
267
+ | 주요 플래그 시맨틱 변경 | major breaking |
268
+
269
+ ### 8-4. 프론트매터 스키마
270
+
271
+ `assets/agents/*/body.md`·`assets/skills/*/body.md` frontmatter 스키마 변경은 `assets/schema/` 버전 문서에서 관리될 예정이다. 현재는 agent·skill frontmatter 전용 스키마 파일이 미작성 상태이며, 작성 시 `assets/schema/` 디렉터리에 위치한다. 본 문서에는 "스키마 호환 주소: `assets/schema/`" 만 명시한다.
@@ -20,6 +20,8 @@ end user (컨슈머)
20
20
 
21
21
  nexus-core는 자산을 **정의**합니다. plugin repo는 자산을 **패키징**합니다. end user는 플러그인을 **소비**합니다.
22
22
 
23
+ > 계약 명세는 [docs/contract/harness-io.md](./contract/harness-io.md)를 참조. 본 문서는 튜토리얼입니다.
24
+
23
25
  ---
24
26
 
25
27
  ## 2. `nexus-core sync` 사용법
@@ -37,7 +39,7 @@ bunx @moreih29/nexus-core sync --harness=<claude|opencode|codex> --target=<dir>
37
39
  | 플래그 | 기본값 | 설명 |
38
40
  |---|---|---|
39
41
  | `--harness=<name>` | 전체 (all) | 대상 하네스를 `claude`, `opencode`, `codex` 중 하나로 제한 |
40
- | `--target=<dir>` | `dist/` | 출력 디렉터리. plugin repo 루트를 지정하려면 `--target=./` |
42
+ | `--target=<dir>` | `dist/` | 출력 디렉터리. `<dir>` 직속에 자산을 기록합니다 (harness prefix 없음). plugin repo 루트에 직접 출력하려면 `--target=./` |
41
43
  | `--dry-run` | — | 변경될 파일 목록만 출력. 실제 쓰기 없음 |
42
44
  | `--force` | — | Template 파일(처음 한 번만 생성되는 파일)도 강제 덮어쓰기 |
43
45
  | `--strict` | — | Managed 파일에 미커밋 로컬 변경이 있으면 오류로 중단 |
@@ -47,8 +49,8 @@ bunx @moreih29/nexus-core sync --harness=<claude|opencode|codex> --target=<dir>
47
49
 
48
50
  | 분류 | 예시 경로 | 정책 |
49
51
  |---|---|---|
50
- | **Managed** | `agents/*.md`, `src/agents/*.ts`, `plugin/skills/*/SKILL.md`, `dist/claude/settings.json`, `dist/codex/install/AGENTS.fragment.md` | 항상 덮어씀 (`--dry-run` 시 제외) |
51
- | **Template** | `.claude-plugin/plugin.json`, `package.json` | 파일이 없을 때만 생성. `--force`로 강제 가능 |
52
+ | **Managed** | `agents/*.md`, `src/agents/*.ts`, `plugin/skills/*/SKILL.md`, `settings.json`, `install/AGENTS.fragment.md` | 항상 덮어씀 (`--dry-run` 시 제외) |
53
+ | **Template** | `.claude-plugin/plugin.json`, `package.json`, `src/plugin.ts`, `install/install.sh` | 파일이 없을 때만 생성. `--force`로 강제 가능 |
52
54
 
53
55
  **직접 편집하지 말아야 할 경로**: Managed 경로는 다음 sync 시 덮어집니다. 커스터마이즈가 필요하면 Template 경로나 별도 파일을 사용하세요.
54
56
 
@@ -92,9 +94,9 @@ nexus-core는 10개 에이전트 중 `lead`를 primary orchestrator로 지정합
92
94
 
93
95
  | 하네스 | 주입 경로 | Managed 산출물 | Consumer 작업 |
94
96
  |---|---|---|---|
95
- | Claude | `settings.json`의 `agent` 키 | `dist/claude/settings.json` | 없음 (자동) |
96
- | OpenCode | `AgentConfig.mode = "primary"` | `dist/opencode/src/agents/<name>.ts` | 없음 (자동) |
97
- | Codex | `AGENTS.md` 수동 머지 | `dist/codex/install/AGENTS.fragment.md` | [docs/consuming/codex-lead-merge.md](./consuming/codex-lead-merge.md) 참조 |
97
+ | Claude | `settings.json`의 `agent` 키 | `settings.json` | 없음 (자동) |
98
+ | OpenCode | `AgentConfig.mode = "primary"` | `src/agents/<name>.ts` | 없음 (자동) |
99
+ | Codex | `AGENTS.md` 수동 머지 | `install/AGENTS.fragment.md` | [docs/consuming/codex-lead-merge.md](./consuming/codex-lead-merge.md) 참조 |
98
100
 
99
101
  ---
100
102
 
@@ -170,7 +172,9 @@ Claude 플러그인은 플러그인 repo 자체가 설치 단위입니다. 컨
170
172
 
171
173
  `plugin.json`의 `version` 필드가 업데이트 감지 기준입니다. 릴리즈마다 버전을 올리세요.
172
174
 
173
- **Lead primary agent 주입**: sync는 `.claude-plugin/` 디렉터리가 아닌 플러그인 루트에 `dist/claude/settings.json`을 생성합니다. 이 파일에는 `{ "agent": "lead" }` 키가 포함되어, Claude Code가 플러그인 활성 시 main thread를 `lead` 에이전트로 실행합니다. 사용자가 다른 에이전트로 override하려면 프로젝트 또는 사용자 `.claude/settings.json`에서 scope 우선순위에 따라 재정의할 수 있습니다.
175
+ **Lead primary agent 주입**: sync는 `.claude-plugin/` 디렉터리가 아닌 플러그인 루트에 `settings.json`을 생성합니다. 이 파일에는 `{ "agent": "lead" }` 키가 포함되어, Claude Code가 플러그인 활성 시 main thread를 `lead` 에이전트로 실행합니다. 사용자가 다른 에이전트로 override하려면 프로젝트 또는 사용자 `.claude/settings.json`에서 scope 우선순위에 따라 재정의할 수 있습니다.
176
+
177
+ `--target=./` flat 출력은 Claude Code marketplace의 `source: "./"` 계약과 직접 정합합니다. sync 결과물이 repo 루트에 위치하기 때문에 별도의 경로 재지정 없이 마켓플레이스에서 바로 인식됩니다.
174
178
 
175
179
  ---
176
180
 
@@ -195,18 +199,12 @@ OpenCode 플러그인은 npm 패키지로 배포됩니다. 컨슈머가 `opencod
195
199
  }
196
200
  ```
197
201
 
198
- #### hook manifest 스키마 (v0.14.0)
202
+ **`src/plugin.ts`** (Template 처음 sync 시 생성됨): mountHooks 진입점 보일러플레이트. 내용은 [`docs/plugin-template/opencode/src/plugin.ts`](../docs/plugin-template/opencode/src/plugin.ts) 참조. 저자는 최초 생성 후 자유롭게 수정 가능 (다음 sync에서 덮어쓰지 않음).
199
203
 
200
- v0.14.0부터 OpenCode hook manifest 스키마가 변경되었습니다. 플러그인 진입점에서
201
- `@moreih29/nexus-core`의 서브패스를 통해 manifest를 임포트하세요.
202
-
203
- ```typescript
204
- import type { Plugin } from "@opencode-ai/plugin";
205
- import { mountHooks } from "@moreih29/nexus-core/hooks/opencode-mount";
206
- import manifest from "@moreih29/nexus-core/hooks/opencode-manifest" with { type: "json" };
204
+ #### hook manifest 스키마 (v0.14.0)
207
205
 
208
- export const OpencodeNexus: Plugin = async (ctx) => mountHooks(ctx, manifest);
209
- ```
206
+ v0.14.0부터 OpenCode hook manifest 스키마가 변경되었습니다. 진입점(`src/plugin.ts`)에서
207
+ `@moreih29/nexus-core`의 서브패스를 통해 manifest를 임포트합니다.
210
208
 
211
209
  manifest의 구조는 다음과 같습니다.
212
210
 
@@ -261,48 +259,7 @@ Codex는 플러그인 시스템(`.codex-plugin/plugin.json`)과 native agent 시
261
259
  1. `nexus-core sync --harness=codex --target=./` 실행 후 커밋
262
260
  2. install 헬퍼 스크립트(`install/install.sh`) 작성 또는 `package.json`의 `install-plugin` 스크립트 구현
263
261
 
264
- install 스크립트가 수행해야 하는 작업:
265
-
266
- ```bash
267
- #!/usr/bin/env bash
268
- # install/install.sh — 컨슈머 machine에서 실행
269
-
270
- PLUGIN_NAME="my-codex-plugin"
271
-
272
- # 1. config.toml에 MCP 서버 + agent 테이블 병합 (block-marker 패턴)
273
- MARKER_BEGIN="# BEGIN ${PLUGIN_NAME}"
274
- MARKER_END="# END ${PLUGIN_NAME}"
275
- CONFIG="$HOME/.codex/config.toml"
276
-
277
- # 기존 블록 제거 후 새 내용 삽입
278
- if grep -q "${MARKER_BEGIN}" "$CONFIG" 2>/dev/null; then
279
- sed -i.bak "/${MARKER_BEGIN}/,/${MARKER_END}/d" "$CONFIG"
280
- fi
281
-
282
- {
283
- echo "${MARKER_BEGIN}"
284
- cat install/config.fragment.toml
285
- echo "${MARKER_END}"
286
- } >> "$CONFIG"
287
-
288
- # 2. agent TOML 파일을 user scope로 복사
289
- mkdir -p "$HOME/.codex/agents"
290
- cp agents/*.toml "$HOME/.codex/agents/"
291
-
292
- # 3. lead agent body를 AGENTS.md에 머지 (block-marker 패턴)
293
- FRAGMENT="dist/codex/install/AGENTS.fragment.md"
294
- AGENTS_TARGET="$HOME/.codex/AGENTS.md"
295
- FRAG_BEGIN="<!-- nexus-core:lead:start -->"
296
- FRAG_END="<!-- nexus-core:lead:end -->"
297
-
298
- if grep -q "${FRAG_BEGIN}" "$AGENTS_TARGET" 2>/dev/null; then
299
- sed -i.bak "/${FRAG_BEGIN}/,/${FRAG_END}/d" "$AGENTS_TARGET"
300
- fi
301
-
302
- cat "$FRAGMENT" >> "$AGENTS_TARGET"
303
-
304
- echo "Installed ${PLUGIN_NAME}"
305
- ```
262
+ **`install/install.sh`** (Template 처음 sync 시 생성됨): block-marker 머지 설치 스크립트. 내용은 [`docs/plugin-template/codex/install/install.sh`](../docs/plugin-template/codex/install/install.sh) 참조. 저자는 `PLUGIN_NAME`·`CODEX_HOME` 등을 편집하여 최적화 가능.
306
263
 
307
264
  **block-marker 패턴**: `# BEGIN <plugin-name>` / `# END <plugin-name>` 마커 사이의 내용만 교체합니다.
308
265
  기존 사용자 설정을 덮어쓰지 않습니다. oh-my-codex의 `omx setup` 패턴에서 가져온 방식입니다.
@@ -316,7 +273,7 @@ command = "nexus-mcp"
316
273
 
317
274
  `nexus-mcp`는 `@moreih29/nexus-core`를 전역 설치하면 PATH에 추가됩니다.
318
275
 
319
- **Lead primary agent 주입**: sync는 `dist/codex/install/AGENTS.fragment.md`를 생성합니다. 이 파일은 `<!-- nexus-core:lead:start -->` / `<!-- nexus-core:lead:end -->` 마커로 감싸진 `lead` agent body를 포함합니다. Codex는 `AGENTS.md`를 공식 로드 경로로 사용하므로 컨슈머가 직접 머지해야 합니다. install 스크립트의 3단계가 이를 자동화합니다. 자세한 수동 머지 절차는 [docs/consuming/codex-lead-merge.md](./consuming/codex-lead-merge.md) 참조.
276
+ **Lead primary agent 주입**: sync는 `install/AGENTS.fragment.md`를 생성합니다. 이 파일은 `<!-- nexus-core:lead:start -->` / `<!-- nexus-core:lead:end -->` 마커로 감싸진 `lead` agent body를 포함합니다. Codex는 `AGENTS.md`를 공식 로드 경로로 사용하므로 컨슈머가 직접 머지해야 합니다. `install/install.sh`의 마지막 단계가 이를 자동화합니다. 자세한 수동 머지 절차는 [docs/consuming/codex-lead-merge.md](./consuming/codex-lead-merge.md) 참조.
320
277
 
321
278
  ---
322
279
 
@@ -353,14 +310,16 @@ Codex 플러그인의 npm 기반 설치는 공식 지원 여부가 확인되지
353
310
 
354
311
  ### Q: 여러 하네스를 한 번에 동기화할 수 있나요?
355
312
 
356
- `--harness` 플래그를 생략하면 모든 하네스를 순차로 처리합니다. `--target`은 공통 출력 루트가 됩니다.
313
+ `--harness` 플래그를 생략하면 3 하네스를 순차로 처리합니다. 단, flat 출력 특성상 모든 하네스 자산이 동일한 `--target` 디렉터리에 쌓입니다. 하네스별로 별도 디렉터리(또는 별도 repo)에 출력해야 할 경우 개별 실행을 권장합니다.
357
314
 
358
315
  ```bash
359
- # dist/claude/, dist/opencode/, dist/codex/ 에 동시 생성
360
- bunx @moreih29/nexus-core sync --target=./dist
316
+ # 하네스별로 target을 분리해 실행
317
+ bunx @moreih29/nexus-core sync --harness=claude --target=./dist/claude
318
+ bunx @moreih29/nexus-core sync --harness=opencode --target=./dist/opencode
319
+ bunx @moreih29/nexus-core sync --harness=codex --target=./dist/codex
361
320
  ```
362
321
 
363
- 각 하네스 디렉터리를 별도 git repo로 분리하는 구성에서는 `--harness` 플래그로 개별 실행을 권장합니다.
322
+ 각 하네스 repo 루트에 직접 출력하는 구성에서는 `--harness`와 `--target`을 함께 지정하세요.
364
323
 
365
324
  ### Q: plugin.json에서 오버라이드한 자산 경로가 sync 후 사라지나요?
366
325
 
@@ -374,8 +333,8 @@ Template 파일인 `plugin.json`은 `--force` 없이는 덮어쓰지 않습니
374
333
 
375
334
  빌드는 `mode: primary`인 에이전트를 전부 처리합니다. 단, 하네스별 동작이 다릅니다.
376
335
 
377
- - **Claude**: `dist/claude/settings.json`은 첫 번째 primary만 기록하고, 복수 발견 시 경고 log를 출력합니다.
378
- - **Codex**: `AGENTS.fragment.md`에 primary 에이전트를 순차 append합니다.
336
+ - **Claude**: `settings.json`은 첫 번째 primary만 기록하고, 복수 발견 시 경고 log를 출력합니다.
337
+ - **Codex**: `install/AGENTS.fragment.md`에 primary 에이전트를 순차 append합니다.
379
338
  - **OpenCode**: 해당 에이전트 TS 모듈 각각에 `mode: "primary"`를 설정합니다.
380
339
 
381
340
  ---
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/env bash
2
+ # Codex plugin installer — block-marker merge pattern.
3
+ # nexus-core Model 2: wrapper owns integration seams.
4
+ # Merges config.fragment.toml into ~/.codex/config.toml,
5
+ # copies native agent TOMLs to ~/.codex/agents/,
6
+ # and merges AGENTS.fragment.md into ~/.codex/AGENTS.md.
7
+ set -euo pipefail
8
+
9
+ PLUGIN_NAME="${PLUGIN_NAME:-codex-nexus}"
10
+ CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
11
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
12
+ REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
13
+
14
+ mkdir -p "$CODEX_HOME" "$CODEX_HOME/agents" "$CODEX_HOME/plugins"
15
+
16
+ # 1. config.toml — block-marker merge
17
+ MARKER_BEGIN="# BEGIN ${PLUGIN_NAME}"
18
+ MARKER_END="# END ${PLUGIN_NAME}"
19
+ CONFIG="$CODEX_HOME/config.toml"
20
+ CONFIG_FRAGMENT="$SCRIPT_DIR/config.fragment.toml"
21
+
22
+ touch "$CONFIG"
23
+ if grep -q "${MARKER_BEGIN}" "$CONFIG" 2>/dev/null; then
24
+ sed -i.bak "/${MARKER_BEGIN}/,/${MARKER_END}/d" "$CONFIG"
25
+ fi
26
+ {
27
+ echo ""
28
+ echo "${MARKER_BEGIN}"
29
+ cat "$CONFIG_FRAGMENT"
30
+ echo "${MARKER_END}"
31
+ } >> "$CONFIG"
32
+
33
+ # 2. native agent TOMLs
34
+ cp "$REPO_ROOT"/agents/*.toml "$CODEX_HOME/agents/" 2>/dev/null || true
35
+
36
+ # 3. plugin body → ~/.codex/plugins/<name>/
37
+ PLUGIN_DEST="$CODEX_HOME/plugins/${PLUGIN_NAME}"
38
+ rm -rf "$PLUGIN_DEST"
39
+ mkdir -p "$PLUGIN_DEST"
40
+ cp -R "$REPO_ROOT"/plugin/. "$PLUGIN_DEST/"
41
+
42
+ # 4. AGENTS.md — block-marker merge
43
+ AGENTS_TARGET="$CODEX_HOME/AGENTS.md"
44
+ AGENTS_FRAGMENT="$SCRIPT_DIR/AGENTS.fragment.md"
45
+ FRAG_BEGIN="<!-- nexus-core:lead:start -->"
46
+ FRAG_END="<!-- nexus-core:lead:end -->"
47
+
48
+ if [ -f "$AGENTS_FRAGMENT" ]; then
49
+ touch "$AGENTS_TARGET"
50
+ if grep -q "${FRAG_BEGIN}" "$AGENTS_TARGET" 2>/dev/null; then
51
+ awk -v begin="${FRAG_BEGIN}" -v end="${FRAG_END}" '
52
+ $0 ~ begin { skip=1; next }
53
+ $0 ~ end { skip=0; next }
54
+ !skip { print }
55
+ ' "$AGENTS_TARGET" > "$AGENTS_TARGET.tmp" && mv "$AGENTS_TARGET.tmp" "$AGENTS_TARGET"
56
+ fi
57
+ cat "$AGENTS_FRAGMENT" >> "$AGENTS_TARGET"
58
+ fi
59
+
60
+ echo "Installed ${PLUGIN_NAME} → $CODEX_HOME"
@@ -0,0 +1,6 @@
1
+ import type { Plugin } from "@opencode-ai/plugin";
2
+ import { mountHooks } from "@moreih29/nexus-core/hooks/opencode-mount";
3
+ import manifest from "@moreih29/nexus-core/hooks/opencode-manifest" with { type: "json" };
4
+
5
+ export const OpencodeNexus: Plugin = async (ctx) => mountHooks(ctx, manifest);
6
+ export default OpencodeNexus;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moreih29/nexus-core",
3
- "version": "0.14.0",
3
+ "version": "0.15.0",
4
4
  "description": "Nexus ecosystem authoring layer — canonical agents/skills/hooks and 3-harness build pipeline (Claude Code, OpenCode, Codex)",
5
5
  "license": "MIT",
6
6
  "type": "module",