Make Voice Input available only after its local model and runtime are ready. - Bundle the optional sherpa runtime with the published CLI. - Gate the project setting on model installation and stable runtime status codes. - Add localized recovery guidance, documentation, and coverage. Files changed: .changeset/fn-8753-voice-input-enable.md | 7 ++++ docs/dashboard-guide.md | 2 +- docs/settings-reference.md | 8 +++-- packages/cli/package.json | 3 ++ packages/cli/src/__tests__/package-config.test.ts | 16 +++++++++ .../settings/__tests__/VoiceInputSection.test.tsx | 36 ++++++++++++++++---- .../settings/sections/VoiceInputSection.tsx | 30 ++++++++++++----- packages/dashboard/package.json | 2 +- .../routes/__tests__/register-voice-routes.test.ts | 39 ++++++++++++++++++++++ .../dashboard/src/stt/__tests__/voice-stt.test.ts | 27 ++++++++++++--- packages/dashboard/src/stt/parakeet-service.ts | 26 ++++++++++----- packages/i18n/locales/en/app.json | 6 ++++ pnpm-lock.yaml | 6 +++- 13 files changed, 175 insertions(+), 33 deletions(-) Fusion-Task-Id: FN-8753 Fusion-Task-Lineage: db92b148-37f0-45d2-b616-ed2e3f2d54f6 Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
126 lines
3.9 KiB
JSON
126 lines
3.9 KiB
JSON
{
|
|
"name": "@runfusion/fusion",
|
|
"version": "0.74.0",
|
|
"license": "MIT",
|
|
"description": "Fusion CLI: HTTP API server, daemon, dashboard launcher, and task tooling for the Fusion AI coding agent.",
|
|
"homepage": "https://github.com/Runfusion/Fusion#readme",
|
|
"bugs": {
|
|
"url": "https://github.com/Runfusion/Fusion/issues"
|
|
},
|
|
"type": "module",
|
|
"keywords": [
|
|
"pi-package"
|
|
],
|
|
"bin": {
|
|
"agent-browser": "./agent-browser.mjs",
|
|
"fn": "./bin.mjs",
|
|
"fusion": "./bin.mjs"
|
|
},
|
|
"pi": {
|
|
"extensions": [
|
|
"./dist/extension.js"
|
|
],
|
|
"skills": [
|
|
"./skill"
|
|
],
|
|
"image": "https://raw.githubusercontent.com/Runfusion/Fusion/main/demo/screenshot.png"
|
|
},
|
|
"publishConfig": {
|
|
"access": "public"
|
|
},
|
|
"files": [
|
|
"agent-browser.mjs",
|
|
"bin.mjs",
|
|
"dist/**/*.js",
|
|
"dist/**/*.d.ts",
|
|
"dist/**/*.d.ts.map",
|
|
"dist/**/*.js.map",
|
|
"dist/migrations/**",
|
|
"dist/registry-manifest.json",
|
|
"dist/client/**",
|
|
"dist/desktop/**",
|
|
"dist/pi-claude-cli/**",
|
|
"dist/pi-llama-cpp/**",
|
|
"dist/droid-cli/**",
|
|
"dist/plugins/**",
|
|
"skill/**",
|
|
"README.md"
|
|
],
|
|
"scripts": {
|
|
"dev": "tsx src/bin.ts",
|
|
"prebuild": "node ../../scripts/sync-fusion-skill-tools.mjs",
|
|
"prepack": "node ./scripts/prepare-publish-manifest.mjs prepack",
|
|
"postpack": "node ./scripts/prepare-publish-manifest.mjs postpack",
|
|
"build": "tsup",
|
|
"build:package": "cross-env FUSION_CLI_FULL_PACKAGE=1 tsup",
|
|
"build:exe": "bun run build.ts",
|
|
"build:exe:all": "bun run build.ts --all",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "vitest run --silent=passed-only --reporter=dot",
|
|
"test:ci-shape": "vitest run src/__tests__/ci-workflow.test.ts --silent=passed-only --reporter=dot",
|
|
"test:docs-index": "vitest run src/__tests__/docs-readme-index.test.ts --silent=passed-only --reporter=dot",
|
|
"test:slow-cli": "cross-env FUSION_TEST_SLOW_CLI=1 vitest run src/commands/__tests__/agent-export.test.ts --silent=passed-only --reporter=dot",
|
|
"test:extension-integration": "cross-env FUSION_TEST_EXTENSION_INTEGRATION=1 vitest run src/__tests__/extension-integration.test.ts --silent=passed-only --reporter=dot",
|
|
"test:build-exe": "cross-env FUSION_TEST_BUILD_EXE=1 vitest run --config vitest.build-exe.config.ts --silent=passed-only --reporter=dot",
|
|
"test:pre-release": "pnpm test:slow-cli && pnpm test:build-exe"
|
|
},
|
|
"dependencies": {
|
|
"@agentclientprotocol/sdk": "0.24.0",
|
|
"agent-browser": "0.26.0",
|
|
"@earendil-works/pi-ai": "0.82.1",
|
|
"@earendil-works/pi-coding-agent": "0.82.1",
|
|
"claude-code-cli-acp": "0.1.1",
|
|
"dockerode": "^4.0.12",
|
|
"electron": "^33.4.11",
|
|
"embedded-postgres": "15.18.0-beta.17",
|
|
"express": "^5.1.0",
|
|
"i18next": "^26.3.1",
|
|
"ink": "^7.1.1",
|
|
"ink-spinner": "^5.0.0",
|
|
"ink-text-input": "^6.0.0",
|
|
"ioredis": "^5.6.0",
|
|
"multer": "^2.1.1",
|
|
"node-pty": "npm:@homebridge/node-pty-prebuilt-multiarch@^0.13.1",
|
|
"react": "^19.2.0",
|
|
"react-i18next": "^17.0.8",
|
|
"ws": "^8.18.0",
|
|
"playwright-core": "^1.60.0"
|
|
},
|
|
"optionalDependencies": {
|
|
"sherpa-onnx-node": "1.13.4"
|
|
},
|
|
"peerDependencies": {
|
|
"typebox": "*"
|
|
},
|
|
"peerDependenciesMeta": {
|
|
"typebox": {
|
|
"optional": true
|
|
}
|
|
},
|
|
"devDependencies": {
|
|
"@fusion/core": "workspace:*",
|
|
"@fusion/dashboard": "workspace:*",
|
|
"@fusion/engine": "workspace:*",
|
|
"@fusion/i18n": "workspace:*",
|
|
"@fusion/pi-claude-cli": "workspace:*",
|
|
"@fusion/pi-llama-cpp": "workspace:*",
|
|
"@types/node": "^22.0.0",
|
|
"@types/react": "^19.2.0",
|
|
"@types/ws": "^8.5.0",
|
|
"@vitest/coverage-v8": "^4.1.10",
|
|
"cross-env": "^7.0.0",
|
|
"esbuild": "^0.25.12",
|
|
"ink-testing-library": "^4.0.0",
|
|
"tsup": "^8.5.1",
|
|
"tsx": "^4.19.0",
|
|
"typebox": "^1.0.0",
|
|
"typescript": "^5.7.0",
|
|
"vitest": "^4.1.10",
|
|
"yaml": "^2.8.3"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/Runfusion/Fusion"
|
|
}
|
|
}
|