Skip to content

Commit 0f99417

Browse files
committed
feat: add product site (web/site.json + pages.yml caller)
1 parent 61ec623 commit 0f99417

2 files changed

Lines changed: 82 additions & 0 deletions

File tree

‎.github/workflows/pages.yml‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: pages
2+
on:
3+
push:
4+
branches: [main]
5+
paths: ['web/**']
6+
workflow_dispatch:
7+
permissions:
8+
contents: read
9+
pages: write
10+
id-token: write
11+
concurrency:
12+
group: pages
13+
cancel-in-progress: false
14+
jobs:
15+
site:
16+
uses: SuperMarioYL/web-factory/.github/workflows/build-site.yml@v1
17+
with:
18+
factory_ref: v1

‎web/site.json‎

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
{
2+
"schema": 1,
3+
"name": "callpatch",
4+
"github": "https://github.com/SuperMarioYL/callpatch",
5+
"host": "callpatch.lei6393.com",
6+
"lang": { "primary": "zh", "toggle": true },
7+
"accent": ["#e8a23a"],
8+
"hero": {
9+
"eyebrow": { "zh": "本地大模型 · 工具调用 · 运行期修复", "en": "Local LLMs · Tool Calls · Runtime Repair" },
10+
"headline": {
11+
"zh": "接本地大模型\n工具调用不再静默崩溃",
12+
"en": "Run local models\nwithout silent tool-call crashes"
13+
},
14+
"sub": {
15+
"zh": "流式响应里被截断、错位的工具调用,在到达你的编码助手之前就被修好——不用换模型,不用改配置。",
16+
"en": "Truncated, misaligned tool calls in the streaming response are repaired before they reach your coding agent — no model swap, no config change."
17+
},
18+
"command": "callpatch repair --trace broken.sse",
19+
"cta": { "zh": "看修复演示", "en": "See the repair demo" },
20+
"ctaGithub": { "zh": "GitHub", "en": "GitHub" },
21+
"scroll": { "zh": "为什么需要", "en": "Why you need it" }
22+
},
23+
"advantages": [
24+
{
25+
"title": { "zh": "运行期修复,不是事后告警", "en": "Runtime repair, not after-the-fact alerts" },
26+
"body": {
27+
"zh": "流式响应里的畸形工具调用 envelope,在请求抵达你的助手前被修好。你的工作流不会因为一次坏掉的 JSON 就中断。",
28+
"en": "Malformed tool-call envelopes in the streaming response are fixed before the request reaches your agent. Your workflow never breaks on one bad JSON."
29+
},
30+
"chips": ["› 流式 delta 缓冲", "› 实时修复", "› 零中断"]
31+
},
32+
{
33+
"title": { "zh": "按模型查表,对症修复", "en": "Per-model repair recipes" },
34+
"body": {
35+
"zh": "每个模型的工具调用坏法不一样——括号截断、围栏断裂、哨兵泄漏。按模型查表,用对应的修复策略,不是一刀切。",
36+
"en": "Every model breaks tool calls differently — truncated braces, split fences, leaked sentinels. A per-model lookup applies the matching repair strategy, not a one-size-fits-all patch."
37+
},
38+
"chips": ["› 括号平衡", "› 围栏重织", "› 哨兵剥离"]
39+
},
40+
{
41+
"title": { "zh": "单二进制,零依赖", "en": "One binary, zero dependencies" },
42+
"body": {
43+
"zh": "一个跨平台二进制,没有数据库、没有鉴权、没有微服务。本地跑,本地修,数据不出门。",
44+
"en": "A single cross-platform binary — no database, no auth, no microservices. Runs locally, repairs locally, your data never leaves the machine."
45+
},
46+
"chips": ["› 单进程", "› 跨平台", "› 无数据库"]
47+
},
48+
{
49+
"title": { "zh": "一条命令可验", "en": "Verifiable in one command" },
50+
"body": {
51+
"zh": "喂入一段坏掉的流式响应,直接吐出修好的工具调用 JSON 和修复轨迹。修复对不对,肉眼可查。",
52+
"en": "Feed in a broken streaming trace, get back the repaired tool-call JSON plus a repair trace. Whether the fix is right is visible to the naked eye."
53+
},
54+
"chips": ["› 命令行", "› 修复轨迹", "› JSON 可断言"]
55+
}
56+
],
57+
"scene": { "kind": "particle-field" },
58+
"cta": {
59+
"headline": { "zh": "接本地大模型,工具调用先修好再上路", "en": "Run local models with tool calls fixed before they ship" },
60+
"sub": { "zh": "MIT 开源 · 单二进制 · 命令行可验", "en": "MIT open source · single binary · CLI-verifiable" },
61+
"button": { "zh": "看 GitHub", "en": "View on GitHub" }
62+
},
63+
"footer": { "tag": { "zh": "MIT 开源 · 本地运行期修复", "en": "MIT open source · local runtime repair" } }
64+
}

0 commit comments

Comments
 (0)