@meltylabs/chorus
AMCP server package chorus
Install
agr install @meltylabs/chorus --target claudeThis artifact does not publish files for Claude.
Document
{ "name": "chorus", "license": "MIT", "private": true, "version": "0.14.5", "type": "module", "scripts": { "tauri": "tauri", "setup": "./script/setup-instance.sh", "dev": "./script/dev-instance.sh", "generate-schema": "cd src-tauri && cargo run --bin generate_schema && cd ..", "vite:dev": "vite", "vite:preview": "vite preview", "build": "tsc && vite build", "tauri:dev": "tauri dev --config src-tauri/tauri.dev.conf.json", "tauri:qa": "tauri dev --config src-tauri/tauri.qa.conf.json", "tauri:prod": "tauri dev --config src-tauri/tauri.conf.json", "test": "vitest", "lint": "eslint . --ext .ts,.tsx,.js,.jsx", "lint:fix": "eslint . --ext .ts,.tsx,.js,.jsx --fix", "format": "prettier --write .", "format:check": "prettier --check .", "validate": "./script/validate.sh", "validate:fix": "./script/validate.sh --fix", "delete-db": "./script/delete-db.sh", "release": "./script/interactive_release.sh", "prepare": "husky" }, "engines": { "node": ">=22.0.0" }, "jest": { "preset": "ts-jest", "testEnvironment": "node" }, "dependencies": { "@anthropic-ai/sdk": "^0.33.1", "@dnd-kit/core": "^6.3.1", "@dnd-kit/modifiers": "^9.0.0", "@google/genai": "^0.8.0", "@google/generative-ai": "^0.21.0", "@hello-pangea/dnd": "^17.0.0", "@mendable/firecrawl-js": "1.18.2", "@modelcontextprotocol/sdk": "^1.10.2", "@octokit/rest": "^21.1.1", "@posthog/ai": "^3.3.2", "@radix-ui/react-alert-dialog": "^1.1.11", "@radix-ui/react-avatar": "^1.1.7", "@radix-ui/react-checkbox": "^1.2.3", "@radix-ui/react-collapsible": "^1.1.8", "@radix-ui/react-context-menu": "^2.2.12", "@radix-ui/react-dialog": "^1.1.11", "@radix-ui/react-dropdown-menu": "^2.1.12", "@radix-ui/react-hover-card": "^1.1.11", "@radix-ui/react-icons": "^1.3.2", "@radix-ui/react-label": "^2.1.1", "@radix-ui/react-menubar": "^1.1.4", "@radix-ui/react-popover": "^1.1.4", "@radix-ui/react-progress": "^1.1.1", "@radix-ui/react-radio-group": "^1.2.2", "@radix-ui/react-scroll-area": "^1.2.2", "@radix-ui/react-select": "^2.1.4", "@radix-ui/react-separator": "^1.1.1", "@radix-ui/react-slot": "^1.2.0", "@radix-ui/react-switch": "^1.1.2", "@radix-ui/react-tabs": "^1.1.2", "@radix-ui/react-toast": "^1.2.4", "@radix-ui/react-toggle": "^1.1.1", "@radix-ui/react-tooltip": "^1.1.6", "@tanstack/react-query": "^5.69.0", "@tanstack/react-query-devtools": "^5.69.0", "@tauri-apps/api": "2.5.0", "@tauri-apps/plugin-clipboard-manager": "~2.2.1", "@tauri-apps/plugin-deep-link": "~2.2.1", "@tauri-apps/plugin-dialog": "~2.0.2", "@tauri-apps/plugin-fs": "~2.2.1", "@tauri-apps/plugin-global-shortcut": "~2.2.0", "@tauri-apps/plugin-http": "~2.4.3", "@tauri-apps/plugin-notification": "~2.2.1", "@tauri-apps/plugin-opener": "~2.2.6", "@tauri-apps/plugin-os": "~2.2.1", "@tauri-apps/plugin-process": "~2.2.1", "@tauri-apps/plugin-shell": "~2.2.1", "@tauri-apps/plugin-sql": "~2.2.0", "@tauri-apps/plugin-store": "~2.1.0", "@tauri-apps/plugin-stronghold": "~2.2.0", "@tauri-apps/plugin-updater": "~2.7.1", "@types/jest": "^29.5.14", "@types/jszip": "^3.4.1", "@types/mime-types": "^2.1.4", "@types/textarea-caret": "^3.0.3", "@types/vscode": "^1.99.1", "cheerio": "^1.0.0", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "1.1.1", "date-fns": "^4.1.0", "diff": "^7.0.0", "dotenv": "^16.5.0", "exa-js": "^1.6.13", "file-type": "^19.6.0", "framer-motion": "^12.9.1", "highlight.js": "^11.11.1", "html-entities": "^2.6.0", "immer": "^10.1.1", "js-tiktoken": "^1.0.20", "json5": "^2.2.3", "jszip": "^3.10.1", "katex": "^0.16.22", "lodash": "^4.17.21", "lucide-react": "^0.453.0", "memfs": "^4.17.0", "mime-types": "^2.1.35", "minimatch": "^10.0.1", "openai": "^6.10.0", "pdfjs-dist": "^5.3.31", "posthog-js": "^1.236.6", "react": "^18.3.1", "react-dom": "^18.3.1", "react-icons": "^5.5.0", "react-lowlight": "^3.1.0", "react-markdown": "^9.1.0", "react-mermaid2": "^0.1.4", "react-resizable-panels": "^2.1.8", "react-router-dom": "^6.30.0", "react-scan": "^0.0.4", "react-syntax-highlighter": "^15.6.1", "react-window": "^1.8.11", "reagraph": "^4.22.0", "rehype-highlight": "^7.0.2", "rehype-raw": "^7.0.0", "remark-breaks": "^4.0.0", "remark-gfm": "^4.0.1", "selection-popover": "^0.3.0", "simple-icons": "^13.21.0", "sonner": "^2.0.5", "sqlite3": "^5.1.7", "string-argv": "^0.3.2", "tailwindcss-animate": "^1.0.7", "tauri-plugin-macos-permissions-api": "~2.1.1", "textarea-caret": "^3.1.0", "turndown": "^7.2.0", "use-editable": "^2.3.3", "use-react-query-auto-sync": "^0.1.0", "usehooks-ts": "^3.1.1", "uuid": "^9.0.1", "vitest": "^2.1.9", "zustand": "^5.0.5" }, "devDependencies": { "@eslint/js": "^9.25.1", "@tailwindcss/container-queries": "^0.1.1", "@tailwindcss/forms": "^0.5.10", "@tailwindcss/typography": "^0.5.16", "@tanstack/eslint-plugin-query": "^5.74.7", "@tauri-apps/cli": "^2.5.0", "@types/aria-query": "^5.0.4", "@types/diff": "^5.2.3", "@types/katex": "^0.16.7", "@types/lodash": "^4.17.16", "@types/node": "^22.15.0", "@types/react": "^18.3.20", "@types/react-dom": "^18.3.6", "@types/react-katex": "^3.0.4", "@types/react-syntax-highlighter": "^15.5.13", "@types/react-window": "^1.8.8", "@types/shell-quote": "^1.7.5", "@types/turndown": "^5.0.5", "@types/uuid": "^9.0.8", "@vitejs/plugin-react": "^4.4.1", "autoprefixer": "^10.4.21", "cross-env": "^7.0.3", "eslint": "^9.25.1", "eslint-config-react-app": "^7.0.1", "eslint-plugin-react": "^7.37.5", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-refresh": "^0.4.20", "fast-diff": "^1.3.0", "globals": "^15.15.0", "husky": "^9.1.7", "jest": "^29.7.0", "lint-staged": "^16.1.0", "postcss": "^8.5.3", "prettier": "3.3.3", "react-katex": "^3.0.1", "string-width": "^4.2.3", "strip-ansi": "^6.0.1", "tailwind-merge": "^2.6.0", "tailwindcss": "^3.4.17", "ts-jest": "^29.3.2", "ts-node": "^10.9.2", "typescript": "^5.8.3", "typescript-eslint": "^8.31.0", "vite": "^5.4.18", "vite-plugin-node-polyfills": "^0.22.0" } }
Repository README
Describes meltylabs/chorus as a whole, which may contain artifacts other than this one. Where this artifact had no useful description of its own, its summary was taken from here.
Getting Started
You will need:
- NodeJS installed and on your path
- Rust and Cargo installed and on your path (verify with
rustc --version,cargo --version) imagemagick(optional)git-lfs(brew install git-lfs)pnpm(brew install pnpm)
Once you have those set up, please run:
git lfs install --force
git lfs pull
pnpm run setup # This is also our Conductor setup script
pnpm run dev # This is also our Conductor run script
Nightly Build
You can download the nightly build here. Every push to main triggers a new build.
Trustgrade A
- passBody integrity
Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.
- warnType matchbest-effort: server code not analyzed
Whether the artifact is really the kind of thing its metadata claims it is.
- passFreshness
How long since the source repository was last pushed to.
- passPrompt injection
Scans the artifact's own text for instructions aimed at your agent rather than at you.
- passLicense
Whether the source repository declares an SPDX license permissive enough to redistribute.
How the grade is calculated
Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:
- Aevery check passed
- Bone warning
- Ctwo warnings
- Dprompt injection or body integrity failed, or three warnings
- Fone of those failed, and something else is wrong
These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.
Versions
git-76d34a88228d2026-08-06