holycodex 0.3.0 → 0.3.2

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/README.md CHANGED
@@ -79,20 +79,6 @@ Cleanup backs up affected files, removes only HolyCodex-owned configuration and
79
79
  - `packages/` — Git Bash and LSP MCP source.
80
80
  - `test/` — CLI, lifecycle, catalogue, rules, bootstrap, and MCP tests.
81
81
 
82
- ### Versioning for maintainers
83
-
84
- HolyCodex follows [ZeroVer](https://0ver.org/): versions stay below `1.0.0`; fixes increment the third component, while breaking changes increment the second.
85
-
86
- ```sh
87
- npm run version:check # verify every package/runtime version matches
88
- npm run version:patch # compatible release: 0.2.0 -> 0.2.1
89
- npm run version:minor # breaking release: 0.2.7 -> 0.3.0
90
- npm run version:set -- 0.4.3
91
- node scripts/version.mjs patch --dry-run
92
- ```
93
-
94
- The helper updates the root package, plugin manifest, private workspace packages, CLI/cache version, MCP server versions, and pinned tests together. It does not commit, tag, publish, or push. After a bump, review the diff and run the four checks printed by the command.
95
-
96
82
  ## Thanks
97
83
 
98
84
  HolyCodex exists because of the work of:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "holycodex",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Lean Codex-only agent toolkit for ChatGPT Plus",
5
5
  "keywords": [
6
6
  "agents",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "holycodex",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Lean Codex-only agents, skills, hooks, and MCP defaults.",
5
5
  "author": {
6
6
  "name": "David Basile Filho",
@@ -2,5 +2,5 @@ description = "Read-only internal repository explorer. Use for a narrow unfamili
2
2
  model = "gpt-5.6-luna"
3
3
  model_reasoning_effort = "low"
4
4
  developer_instructions = """
5
- Inspect assigned internal area only. Use the git_bash MCP for every shell command. Read-only: search, read, diagnostics, history. No edit, install, external write, or subagent. Do not broaden scope. Return concise findings with exact paths, symbols, evidence, uncertainty. Stop when assigned question answered.
5
+ Start: "I detect investigation intent — [reason]. [action]." Inspect assigned internal area only. Use git_bash MCP for every shell command. Read-only: search, read, diagnostics, history. No edit, install, external write, or subagent. Do not broaden scope. Return concise findings with exact paths, symbols, evidence, uncertainty. Stop when assigned question answered.
6
6
  """
@@ -2,5 +2,5 @@ description = "Read-only external-source researcher. Use when current primary do
2
2
  model = "gpt-5.6-luna"
3
3
  model_reasoning_effort = "low"
4
4
  developer_instructions = """
5
- Research assigned external sources only. Use the git_bash MCP for every shell command. Read-only. Prefer primary current sources. No implementation, external write, or subagent. Do not broaden query. Return concise claim, citation, version/date, conflict, uncertainty. Stop when assigned question answered.
5
+ Start: "I detect research intent — [reason]. [action]." Research assigned external sources only. Use git_bash MCP for every shell command. Read-only. Prefer primary current sources. No implementation, external write, or subagent. Do not broaden query. Return concise claim, citation, version/date, conflict, uncertainty. Stop when assigned question answered.
6
6
  """
@@ -2,5 +2,5 @@ description = "Isolated implementation worker. Use only for a bounded independen
2
2
  model = "gpt-5.6-luna"
3
3
  model_reasoning_effort = "medium"
4
4
  developer_instructions = """
5
- Implement only explicit files, scope, acceptance criteria. Use the git_bash MCP for every shell command. Preserve architecture, API, behavior, naming, style. Smallest correct change. No speculative cleanup, abstraction, dependency, docs, or subagent. Respect user work. Run smallest targeted proof. Return changed paths, checks, blocker.
5
+ Start: "I detect implementation intent — [reason]. [action]." Implement only explicit files, scope, acceptance criteria. Use git_bash MCP for every shell command. Prompt, skill, or instruction task: load caveman skill first; write terse without losing constraints. Preserve architecture, API, behavior, naming, style. Smallest correct change. No speculative cleanup, abstraction, dependency, docs, or subagent. Respect user work. Run smallest targeted proof. Return changed paths, checks, blocker.
6
6
  """
@@ -1,3 +1,4 @@
1
+ import { t as CORE_INSTRUCTIONS } from "./core-instructions-CKS8xwZK.js";
1
2
  import { access } from "node:fs/promises";
2
3
  import { join } from "node:path";
3
4
  //#region src/bootstrap.ts
@@ -14,7 +15,8 @@ async function readinessContext(pluginRoot) {
14
15
  if (error instanceof Error && "code" in error && error.code === "ENOENT") missing.push(file);
15
16
  else throw error;
16
17
  }
17
- return missing.length === 0 ? "" : `HolyCodex incomplete: missing runtime/${missing.join(", runtime/")}. Reinstall HolyCodex before using its local MCPs or hooks.`;
18
+ if (missing.length === 0) return CORE_INSTRUCTIONS;
19
+ return `${CORE_INSTRUCTIONS}\n\nHolyCodex incomplete: missing runtime/${missing.join(", runtime/")}. Reinstall HolyCodex before using its local MCPs or hooks.`;
18
20
  }
19
21
  //#endregion
20
22
  //#region src/bootstrap-cli.ts
@@ -120,7 +120,7 @@ function paths(home = process.env.CODEX_HOME ?? join(homedir(), ".codex")) {
120
120
  home,
121
121
  config: join(home, "config.toml"),
122
122
  cacheRoot,
123
- cache: join(cacheRoot, "0.3.0"),
123
+ cache: join(cacheRoot, "0.3.2"),
124
124
  agents: join(home, "holycodex", "agents"),
125
125
  legacy: [
126
126
  join(home, "plugins", "cache", "sisyphuslabs", "omo"),
@@ -208,7 +208,7 @@ async function cleanup(_options) {
208
208
  }
209
209
  //#endregion
210
210
  //#region src/cli.ts
211
- var VERSION = "0.3.0";
211
+ var VERSION = "0.3.2";
212
212
  var HELP = `HolyCodex ${VERSION}\n\nUsage: holycodex <install|cleanup> [options]\n\nOptions:\n --help Show help\n --version Show version\n --no-tui Accepted; commands are noninteractive\n --codex-autonomous Set autonomous Codex permissions\n --json Print machine-readable result\n`;
213
213
  async function main() {
214
214
  const args = process$1.argv.slice(2);
@@ -0,0 +1,4 @@
1
+ //#region src/core-instructions.ts
2
+ var CORE_INSTRUCTIONS = "HolyCodex core: Start first user-facing update: \"I detect [fix/implementation/investigation/pure question] intent — [reason]. [action].\" Then act. Use git_bash MCP for every shell command. Use exec_command only when git_bash is unavailable or work is not a shell command. Prompt, skill, or instruction task: load caveman skill first; write terse without losing constraints. Primary agent keeps control. Subagents reduce cost, never simulate an organization. Delegate bounded labor, never responsibility. Spend intelligence only where complexity requires it.";
3
+ //#endregion
4
+ export { CORE_INSTRUCTIONS as t };
@@ -166,7 +166,7 @@ async function handleGitBashMcpRequest(input, options = {}) {
166
166
  capabilities: { tools: { listChanged: false } },
167
167
  serverInfo: {
168
168
  name: "git_bash",
169
- version: "0.3.0"
169
+ version: "0.3.2"
170
170
  },
171
171
  protocolVersion: protocolVersionFromInput(input) ?? "2024-11-05"
172
172
  });
@@ -3072,7 +3072,7 @@ function coerceToolArguments(value) {
3072
3072
  //#endregion
3073
3073
  //#region packages/lsp-core/src/mcp.ts
3074
3074
  var SERVER_NAME = "lsp";
3075
- var SERVER_VERSION = "0.3.0";
3075
+ var SERVER_VERSION = "0.3.2";
3076
3076
  async function handleLspMcpRequest(input) {
3077
3077
  if (!isPlainRecord(input)) return errorResponse(null, -32600, "Invalid Request");
3078
3078
  const id = jsonRpcId(input["id"]);
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env node
2
+ import { t as CORE_INSTRUCTIONS } from "./core-instructions-CKS8xwZK.js";
2
3
  import { mkdir, readFile, readdir, rm, writeFile } from "node:fs/promises";
3
4
  import { dirname, isAbsolute, join, relative, resolve } from "node:path";
4
5
  import { stdin, stdout } from "node:process";
@@ -44,7 +45,10 @@ async function runRulesHook(input) {
44
45
  const cache = cachePath(input.session_id);
45
46
  if (event === "PostCompact") {
46
47
  await rm(cache, { force: true });
47
- return "";
48
+ return `${JSON.stringify({ hookSpecificOutput: {
49
+ hookEventName: event,
50
+ additionalContext: CORE_INSTRUCTIONS
51
+ } })}\n`;
48
52
  }
49
53
  const target = event === "PostToolUse" ? editPath(input.tool_input, input.cwd) : void 0;
50
54
  if (event === "PostToolUse" && target === void 0) return "";