Files
ycode/package.json
T
xiaohan.yuanandClaude Code 8c727e5132 chore(release): bump version to 0.0.11 and record the release
Record the published 0.0.11 release version in package.json and
package-lock.json, and add the release notes plus the handoff entry.

Published installer: release/publish/0.0.11/YCode-0.0.11-Setup-x64.exe
SHA-256 ae31c767bc4de9af6536477e1274de2b3a423aaad621a161821666e211e24b16

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-21 18:37:11 +08:00

232 lines
18 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"name": "ycode",
"version": "0.0.11",
"private": true,
"description": "YCode - 个人 AI Agent 桌面应用(Electron)",
"author": "YCode",
"main": "./out/main/index.mjs",
"scripts": {
"test": "npm run test:core",
"test:core": "npm run typecheck && npm run test:chat && npm run test:sessions && npm run test:persistence && npm run test:conversation",
"test:model-bridge": "esbuild scripts/protocol-bridge-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/protocol-bridge-regression.mjs --log-level=warning && node .tmp/protocol-bridge-regression.mjs && node scripts/claude-bridge-host-regression.mjs",
"test:alignment": "node scripts/run-alignment-regression.mjs",
"test:alignment:dom": "node scripts/run-alignment-regression.mjs --require-dom",
"test:image-lifecycle": "node scripts/test-image-lifecycle.mjs",
"test:permissions:loopback": "node scripts/build-full-access-loopback-kernel.mjs && node scripts/test-full-access-loopback.mjs --kernel",
"test:reporting": "node --test scripts/regression-reporting.test.mjs",
"test:capability-slash:ui": "node scripts/test-capability-slash-ui.mjs",
"test:recommended-skills": "esbuild scripts/recommended-skills-backend-regression.ts --bundle --platform=node --format=esm --external:esbuild --outfile=.tmp/recommended-skills-backend-regression.mjs --log-level=warning && node .tmp/recommended-skills-backend-regression.mjs",
"test:recommended-skills:ui": "node scripts/test-recommended-skills-ui.mjs",
"test:recommended-skills:dom": "node scripts/test-recommended-skills-dom.mjs",
"test:recommended-skills:app": "node scripts/verify-recommended-skills-app.cjs",
"test:recommended-skills:package": "node scripts/test-recommended-archify-package.mjs",
"test:composer-capabilities": "node scripts/run-composer-capabilities-regression.mjs",
"test:claude-append": "node scripts/build-claude-append-probe.mjs && node .tmp/claude-append-protocol-probe.mjs",
"test:claude-append:app": "node scripts/verify-claude-append-app.cjs",
"dev": "electron-vite dev",
"dev:renderer": "electron-vite dev --rendererOnly",
"build": "npm run typecheck && electron-vite build",
"start": "electron-vite preview",
"typecheck": "tsc --noEmit -p tsconfig.node.json && tsc --noEmit -p tsconfig.web.json",
"check:tokens": "node scripts/check-design-tokens.mjs",
"test:settings-performance": "node scripts/verify-settings-performance.cjs",
"models:sync-metadata": "node scripts/sync-model-metadata.mjs",
"test:model-metadata": "esbuild scripts/model-metadata-regression.ts --bundle --platform=node --format=esm --external:esbuild --outfile=.tmp/model-metadata-regression.mjs --log-level=warning && node .tmp/model-metadata-regression.mjs",
"test:claude-kernel": "esbuild scripts/claude-endpoint-regression.ts scripts/claude-tool-input-regression.ts --bundle --platform=node --format=esm --out-extension:.js=.mjs --outdir=.tmp/claude-tests --log-level=warning && node .tmp/claude-tests/claude-endpoint-regression.mjs && node .tmp/claude-tests/claude-tool-input-regression.mjs && node scripts/build-claude-kernel-regression.mjs && node .tmp/claude-kernel-integration.mjs && node scripts/claude-kernel-smoke.mjs",
"test:browser-agent": "esbuild scripts/browser-agent-host-regression.ts --bundle --platform=node --format=cjs --external:electron --outfile=.tmp/browser-agent-host-regression.cjs --log-level=warning && electron .tmp/browser-agent-host-regression.cjs",
"test:chat": "esbuild scripts/message-order-regression.ts scripts/chat-store-regression.ts scripts/chat-stream-committer-regression.ts --bundle --platform=node --format=esm --out-extension:.js=.mjs --outdir=.tmp/chat-tests --log-level=warning && node .tmp/chat-tests/message-order-regression.mjs && node .tmp/chat-tests/chat-store-regression.mjs && node .tmp/chat-tests/chat-stream-committer-regression.mjs",
"test:references": "esbuild scripts/reference-content-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=empty --outfile=.tmp/reference-content-regression.cjs --log-level=error && node .tmp/reference-content-regression.cjs",
"test:markdown": "esbuild scripts/markdown-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=empty --outfile=.tmp/markdown-regression.cjs --log-level=warning && node .tmp/markdown-regression.cjs",
"test:recovered": "esbuild scripts/recovered-parser-regression.ts scripts/source-projection-regression.ts scripts/code-block-regression.tsx scripts/incremental-markdown-regression.ts scripts/math-renderer-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=empty --out-extension:.js=.cjs --outdir=.tmp/recovered-tests --log-level=warning && node .tmp/recovered-tests/recovered-parser-regression.cjs && node .tmp/recovered-tests/source-projection-regression.cjs && node .tmp/recovered-tests/code-block-regression.cjs && node .tmp/recovered-tests/incremental-markdown-regression.cjs && node .tmp/recovered-tests/math-renderer-regression.cjs",
"recover:chat-reference": "node scripts/rea/recover-chat-reference.mjs",
"test:persistence": "esbuild scripts/chat-persistence-regression.ts --bundle --platform=node --format=esm --external:esbuild --outfile=.tmp/chat-persistence-regression.mjs --log-level=warning && node .tmp/chat-persistence-regression.mjs",
"test:sessions": "esbuild scripts/session-store-regression.ts --bundle --platform=node --format=esm --external:esbuild --outfile=.tmp/session-store-regression.mjs --log-level=warning && node .tmp/session-store-regression.mjs",
"shot": "node scripts/shot.mjs",
"icon:build": "node scripts/gen-icon.mjs",
"dist": "npm run runtimes:prepare && npm run build && electron-builder --win dir --x64",
"dist:installer": "npm run runtimes:prepare && npm run build && electron-builder --win nsis --x64",
"release": "node scripts/updates/release.mjs",
"test:release": "node scripts/updates/release-selftest.mjs",
"test:updates": "esbuild scripts/update-backend-regression.ts scripts/update-maintenance-regression.ts --bundle --platform=node --format=esm --out-extension:.js=.mjs --outdir=.tmp/update-tests --log-level=warning && node .tmp/update-tests/update-backend-regression.mjs && node .tmp/update-tests/update-maintenance-regression.mjs && node scripts/updates/selftest.mjs && node scripts/updates/contract-selftest.mjs && node scripts/updates/nsis-safety-regression.mjs",
"test:updates:ui": "node scripts/verify-updates-ui.cjs",
"updates:key": "node scripts/updates/init-key.mjs",
"updates:prepare": "node scripts/updates/prepare-release.mjs",
"updates:deploy": "node scripts/updates/deploy.mjs",
"verify:ui": "node scripts/verify-ui.mjs",
"test:media": "esbuild scripts/mermaid-regression.ts --bundle --platform=node --format=esm --packages=external --jsx=automatic --loader:.css=empty --outfile=.tmp/media-tests/mermaid-regression.mjs --log-level=warning && node .tmp/media-tests/mermaid-regression.mjs && esbuild scripts/image-renderer-regression.tsx scripts/path-renderer-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=empty --out-extension:.js=.cjs --outdir=.tmp/media-tests --log-level=warning && node .tmp/media-tests/image-renderer-regression.cjs && node .tmp/media-tests/path-renderer-regression.cjs",
"test:resources": "esbuild scripts/resource-bridge-regression.ts --bundle --platform=node --format=esm --external:esbuild --outfile=.tmp/resource-bridge-regression.mjs --log-level=warning && node .tmp/resource-bridge-regression.mjs",
"recover:typography": "node scripts/rea/recover-typography-reference.mjs",
"test:font-size": "esbuild scripts/font-size-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/font-size-regression.mjs --log-level=warning && node .tmp/font-size-regression.mjs",
"test:conversation": "esbuild scripts/conversation-renderer-regression.tsx scripts/composer-regression.tsx scripts/completed-fold-regression.tsx scripts/streaming-footer-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=text --out-extension:.js=.cjs --outdir=.tmp/conversation-tests --log-level=error && node .tmp/conversation-tests/conversation-renderer-regression.cjs && node .tmp/conversation-tests/composer-regression.cjs && node .tmp/conversation-tests/streaming-footer-regression.cjs && node .tmp/conversation-tests/completed-fold-regression.cjs",
"test:workbench-escape": "esbuild scripts/workbench-escape-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/workbench-escape-regression.mjs --log-level=warning && node .tmp/workbench-escape-regression.mjs",
"test:assistant-footer": "esbuild scripts/assistant-message-footer-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=empty --outfile=.tmp/assistant-message-footer-regression.cjs --log-level=error && node .tmp/assistant-message-footer-regression.cjs",
"test:personalization": "esbuild scripts/personalization-prompt-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/personalization-prompt-regression.mjs --log-level=warning && node .tmp/personalization-prompt-regression.mjs",
"test:memory": "node scripts/verify-memory-settings.cjs",
"test:remediation": "esbuild scripts/remediation-pure-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/remediation-pure-regression.mjs --log-level=warning && node .tmp/remediation-pure-regression.mjs",
"test:archived-tasks": "node scripts/verify-archived-tasks.cjs",
"test:app-discover": "node scripts/verify-app-discover.cjs",
"test:automations": "esbuild scripts/automation-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/automation-regression.mjs --log-level=warning && node .tmp/automation-regression.mjs",
"test:library": "esbuild scripts/library-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/library-regression.mjs --log-level=warning && node .tmp/library-regression.mjs",
"test:library-ui": "esbuild scripts/library-ui-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=empty --loader:.svg=dataurl --outfile=.tmp/library-ui-regression.cjs --log-level=warning && node .tmp/library-ui-regression.cjs",
"test:module-ui": "node scripts/verify-module-ui-parity.cjs",
"test:project-tasks": "esbuild scripts/project-task-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/project-task-regression.mjs --log-level=warning && node .tmp/project-task-regression.mjs",
"recover:artifact-reference": "node scripts/rea/recover-artifact-reference.mjs",
"test:artifacts": "esbuild scripts/artifact-diff-regression.ts scripts/artifact-renderer-regression.tsx scripts/specialized-block-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=empty --out-extension:.js=.cjs --outdir=.tmp/artifact-tests --log-level=warning && node .tmp/artifact-tests/artifact-diff-regression.cjs && node .tmp/artifact-tests/artifact-renderer-regression.cjs && node .tmp/artifact-tests/specialized-block-regression.cjs",
"recover:conversation-labels": "node scripts/rea/recover-conversation-labels.mjs",
"rea:css:prepare": "node scripts/rea/prepare-css-runtime.mjs",
"rea:css:capture": "node scripts/rea/capture-css.mjs",
"recover:css-reference": "node scripts/rea/export-css-reference.mjs",
"test:rea-css": "node scripts/rea/css-capture-regression.mjs && node scripts/rea/css-runtime-contract-regression.mjs && node scripts/rea/visual-capture-regression.mjs && node scripts/rea/visual-probe-regression.mjs && node scripts/rea/visual-probe-budget-regression.mjs && node scripts/rea/media-assets-regression.mjs && node scripts/rea/selected-artifact-text-regression.mjs && node scripts/rea/css-mcp-regression.mjs && node scripts/rea/css-runtime-integrity.mjs",
"test:rea-visual-live": "node scripts/rea/visual-probe-live-regression.mjs",
"test:visual-pixels": "node scripts/rea/compare-visual-pixels.mjs --self-test",
"test:font-platform": "node scripts/rea/capture-ycode-font-platform-fixture.mjs && node scripts/rea/verify-font-platform-parity.mjs .tmp/ycode-font-platform-selftest-reference.json .tmp/ycode-font-platform-selftest-result.json",
"verify:previews": "node scripts/verify-conversation-previews.cjs",
"test:pierre": "node scripts/rea/test-recovered-pierre-diff.mjs",
"test:tool-virtualizer": "node scripts/rea/test-recovered-tool-virtualizer.mjs",
"verify:pierre": "node scripts/verify-pierre-diff.cjs",
"rea:visual:capture": "node scripts/rea/capture-css.mjs --visuals",
"recover:conversation-styles": "node scripts/rea/recover-conversation-styles.mjs && node scripts/rea/recover-composer-styles.mjs && node scripts/rea/recover-question-styles.mjs && node scripts/rea/recover-task-styles.mjs && node scripts/rea/recover-tool-result-styles.mjs && node scripts/rea/recover-artifact-styles.mjs",
"recover:streaming-footer": "node scripts/rea/recover-streaming-loading-tips.mjs && node scripts/rea/recover-streaming-footer-styles.mjs",
"recover:conversation-icons": "node scripts/rea/recover-action-icons.mjs && node scripts/rea/recover-runtime-icons.mjs && node scripts/rea/recover-question-icons.mjs && node scripts/rea/recover-approval-icon.mjs",
"recover:modern-conversation-labels": "node scripts/rea/recover-modern-conversation-labels.mjs",
"test:modern-conversation-labels": "node scripts/rea/modern-conversation-labels-regression.mjs",
"test:tool-approvals": "esbuild scripts/tool-approval-regression.tsx --bundle --platform=node --format=cjs --jsx=automatic --loader:.css=text --outfile=.tmp/tool-approval-regression.cjs --log-level=error && node .tmp/tool-approval-regression.cjs",
"verify:conversation-states": "node scripts/verify-conversation-states.cjs",
"recover:fold-summary": "node scripts/rea/recover-fold-summary.mjs",
"test:fold-summary": "node scripts/rea/recovered-fold-summary-regression.mjs",
"test:tool-styles": "node scripts/rea/tool-result-styles-regression.mjs",
"test:workbuddy-import": "esbuild scripts/workbuddy-import-regression.ts --bundle --platform=node --format=esm --outfile=.tmp/workbuddy-import-regression.mjs --log-level=warning && node .tmp/workbuddy-import-regression.mjs",
"test:rea-conversation": "node scripts/rea/selected-conversation-regression.mjs",
"runtimes:prepare": "node scripts/prepare-runtime-bundle.mjs",
"runtimes:verify": "node scripts/verify-runtime-bundle.mjs",
"runtimes:smoke": "node scripts/smoke-runtime-bundle.mjs",
"test:runtime-bundle": "node --test scripts/runtime-bundle.test.mjs"
},
"dependencies": {
"@anthropic-ai/claude-agent-sdk": "^0.3.304",
"@anthropic-ai/sdk": "^0.135.0",
"@floating-ui/react": "0.27.20",
"@modelcontextprotocol/sdk": "^1.32.1",
"@xterm/addon-fit": "0.11.0",
"@xterm/xterm": "6.0.0",
"dompurify": "3.4.17",
"fflate": "^0.8.3",
"get-east-asian-width": "^1.4.0",
"html-react-parser": "^6.1.8",
"katex": "0.16.47",
"markdown-it": "^14.1.0",
"markdown-it-texmath": "^1.0.0",
"mermaid": "11.17.2",
"node-pty": "1.1.0",
"prismjs": "^1.30.0",
"react": "^19.3.0",
"react-dom": "^19.3.0",
"rrule": "^2.8.1",
"slate": "0.143.0",
"slate-dom": "0.142.0",
"slate-history": "0.140.0",
"slate-react": "0.142.0",
"svg-pan-zoom": "3.6.2",
"yaml": "^2.9.1",
"zod": "^4.6.7",
"zustand": "^5.0.15"
},
"devDependencies": {
"@babel/generator": "^8.0.6",
"@babel/parser": "^8.0.7",
"@resvg/resvg-js": "^2.6.2",
"@types/katex": "^0.16.8",
"@types/markdown-it": "^14.2.0",
"@types/node": "^26.6.5",
"@types/prismjs": "^1.26.6",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"@types/svg-pan-zoom": "^3.3.0",
"@vitejs/plugin-react": "^6.1.2",
"7zip-bin": "5.2.0",
"electron": "^37.10.3",
"electron-builder": "^26.15.3",
"electron-vite": "^5.0.0",
"postcss": "8.5.30",
"typescript": "^7.0.2",
"vite": "^8.3.4"
},
"build": {
"appId": "com.ycode.app",
"productName": "YCode",
"directories": {
"output": "release",
"buildResources": "build"
},
"files": [
"out/**/*",
"package.json",
"!node_modules/@anthropic-ai/claude-agent-sdk-win32-x64/**"
],
"npmRebuild": false,
"asarUnpack": [
"node_modules/@anthropic-ai/claude-agent-sdk/**"
],
"extraResources": [
{
"from": "resources/updates/public-key.pem",
"to": "updates/public-key.pem"
},
{
"from": "resources/model-metadata",
"to": "model-metadata",
"filter": [
"models.dev.json",
"manifest.json",
"LICENSE"
]
},
{
"from": "node_modules/@anthropic-ai/claude-agent-sdk-win32-x64",
"to": "claude",
"filter": [
"claude.exe",
"LICENSE.md",
"README.md",
"package.json"
]
},
{
"from": "resources/icon.png",
"to": "icon.png"
},
{
"from": "resources/tray.png",
"to": "tray.png"
},
{
"from": "resources/runtimes",
"to": "runtimes",
"filter": [
"manifest.json",
"THIRD-PARTY-NOTICES.md",
"win32-x64/**/*"
]
}
],
"win": {
"icon": "build/icon.ico",
"artifactName": "YCode-${version}-Setup-${arch}.${ext}",
"target": [
"dir"
]
},
"nsis": {
"include": "build/installer.nsh",
"oneClick": false,
"perMachine": false,
"allowToChangeInstallationDirectory": true,
"deleteAppDataOnUninstall": false,
"createDesktopShortcut": true,
"createStartMenuShortcut": true,
"shortcutName": "YCode"
},
"beforePack": "./scripts/runtime-before-pack.cjs"
}
}