Skip to content

Commit 8661d89

Browse files
authored
Add v0.4.3 release notes
1 parent f56e4a2 commit 8661d89

2 files changed

Lines changed: 31 additions & 10 deletions

File tree

.github/releases/v0.4.3.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# unch v0.4.3
2+
3+
`v0.4.3` is a small Codex and npm polish release. It focuses on making the npm-installed workflow easier to turn into a working agent setup after installing `@uchebnick/unch`.
4+
5+
## Highlights
6+
7+
- Added `unch codex install` to the npm wrapper flow, so a user can install the package, register the MCP server, and install the local `unch` Codex skill with one explicit command
8+
- The Codex setup writes the skill to `~/.codex/skills/unch/SKILL.md`, configures longer MCP startup/tool timeouts, and removes the old `~/.codex/prompts/unch.md` prompt if it exists
9+
- Refreshed README, npm package docs, and Mintlify installation docs around npm as the recommended install path and Codex skill setup
10+
- Aligned the npm MCP smoke test with the current tools-only MCP server by checking `tools/list` and `workspace_status` instead of the removed prompt API
11+
12+
## Upgrade notes
13+
14+
- If you installed `@uchebnick/unch` before this release and want Codex integration, run `unch codex install` once and restart Codex
15+
- The MCP server still exposes the stable tools `workspace_status`, `search_code`, and `index_repository`
16+
- Source installs can use `go install github.com/uchebnick/unch/cmd/unch@v0.4.3`

npm/unch/scripts/mcp-smoke.js

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,15 @@ async function main() {
5656
child.stdin.write(frame({
5757
jsonrpc: "2.0",
5858
id: 2,
59-
method: "prompts/list"
59+
method: "tools/list"
6060
}));
6161
child.stdin.write(frame({
6262
jsonrpc: "2.0",
6363
id: 3,
64-
method: "prompts/get",
64+
method: "tools/call",
6565
params: {
66-
name: "unch",
67-
arguments: { query: "router middleware" }
66+
name: "workspace_status",
67+
arguments: {}
6868
}
6969
}));
7070
child.stdin.end();
@@ -80,13 +80,18 @@ async function main() {
8080

8181
const messages = readFrames(Buffer.concat(stdout));
8282
assert.equal(messages.length, 3);
83-
assert.ok(messages[0].result.capabilities.prompts);
84-
assert.equal(messages[1].result.prompts[0].name, "unch");
83+
assert.ok(messages[0].result.capabilities.tools);
8584

86-
const promptText = messages[2].result.messages[0].content.text;
87-
assert.match(promptText, /workspace_status/);
88-
assert.match(promptText, /search_code/);
89-
assert.match(promptText, /router middleware/);
85+
const toolNames = messages[1].result.tools.map((tool) => tool.name).sort();
86+
assert.deepEqual(toolNames, ["index_repository", "search_code", "workspace_status"]);
87+
88+
const status = messages[2].result.structuredContent;
89+
assert.equal(typeof status.root, "string");
90+
assert.equal(typeof status.state_dir, "string");
91+
assert.equal(typeof status.index_present, "boolean");
92+
93+
const statusText = messages[2].result.content[0].text;
94+
assert.match(statusText, /unch MCP workspace/);
9095

9196
console.log("mcp smoke ok");
9297
}

0 commit comments

Comments
 (0)