mirror of
https://github.com/hanzoai/bot.git
synced 2026-11-01 07:38:30 +00:00
- Fork desktop client into hanzoai/bot under apps/desktop - Minimalist bot-first UI matching screenshots: - Left sidebar with bot cards, animated Face, star badge, search, '+' create bot, user profile, and 'Connect apps' pill - Centered top pill with active bot Face & name, frameless titlebar drag and window controls - Chat stream with onboarding questionnaire / choice cards, animated reactive Bot Face (blinking, talking, listening, thinking) - Bottom pill composer with '+' attachment, mic dictation, and voice waveform mode - Modals for creating bots, connecting apps (Google Workspace, Slack, Notion, GitHub), local workspace & folders, and Live Voice Mode - Tauri 2.x native setup: - productName: 'Hanzo Bot', identifier: 'com.hanzo.bot', binary: 'hanzo-bot' - Local workspace management with folder pickers, file ops, and hanzoai/dev runner - Local daemon status check (127.0.0.1:18789) and cloud bot integration - Native RGBA icons and .icns generated from Hanzo Bot assets
278 lines
8.2 KiB
YAML
278 lines
8.2 KiB
YAML
packages:
|
|
- .
|
|
- ui
|
|
- packages/*
|
|
- extensions/*
|
|
- apps/*
|
|
|
|
allowBuilds:
|
|
'@lydell/node-pty': true
|
|
'@matrix-org/matrix-sdk-crypto-nodejs': true
|
|
'@napi-rs/canvas': true
|
|
'@tloncorp/api@https://codeload.github.com/tloncorp/api-beta/tar.gz/7eede1c1a756977b09f96aa14a92e2b06318ae87': true
|
|
'@whiskeysockets/baileys': true
|
|
authenticate-pam: true
|
|
esbuild: true
|
|
node-llama-cpp: true
|
|
protobufjs: true
|
|
sharp: true
|
|
'@discordjs/opus': false
|
|
'@tloncorp/tlon-skill': false
|
|
better-sqlite3: false
|
|
core-js: false
|
|
koffi: false
|
|
onnxruntime-node: false
|
|
|
|
catalog:
|
|
'@agentclientprotocol/sdk': '^1.4.0'
|
|
'@aws-sdk/client-bedrock': '^3.1121.0'
|
|
'@buape/carbon': '^0.16.0'
|
|
'@clack/prompts': '^1.7.0'
|
|
'@discordjs/voice': '^0.19.2'
|
|
'@grammyjs/runner': '^2.0.3'
|
|
'@grammyjs/transformer-throttler': '^1.2.1'
|
|
'@grammyjs/types': '^5.0.0'
|
|
'@hanzo/iam': '0.21.17'
|
|
'@homebridge/ciao': '^1.3.12'
|
|
'@lancedb/lancedb': '^0.37.1'
|
|
'@larksuiteoapi/node-sdk': '^1.73.0'
|
|
'@line/bot-sdk': '^11.2.0'
|
|
'@lit-labs/signals': '^0.3.0'
|
|
'@lit/context': '^1.1.6'
|
|
'@lydell/node-pty': '^1.2.0-beta.15'
|
|
'@mariozechner/pi-agent-core': '^0.73.1'
|
|
'@mariozechner/pi-ai': '^0.73.1'
|
|
'@mariozechner/pi-coding-agent': '^0.73.1'
|
|
'@mariozechner/pi-tui': '^0.73.1'
|
|
'@matrix-org/matrix-sdk-crypto-nodejs': '^0.6.6'
|
|
'@microsoft/agents-hosting': '^1.8.1'
|
|
'@mozilla/readability': '^0.6.0'
|
|
'@opentelemetry/api': '^1.9.1'
|
|
'@opentelemetry/api-logs': '^0.221.0'
|
|
'@opentelemetry/exporter-logs-otlp-proto': '^0.221.0'
|
|
'@opentelemetry/exporter-metrics-otlp-proto': '^0.221.0'
|
|
'@opentelemetry/exporter-trace-otlp-proto': '^0.221.0'
|
|
'@opentelemetry/resources': '^2.0.0'
|
|
'@opentelemetry/sdk-logs': '^0.221.0'
|
|
'@opentelemetry/sdk-metrics': '^2.10.0'
|
|
'@opentelemetry/sdk-node': '^0.200.0'
|
|
'@opentelemetry/sdk-trace-base': '^2.10.0'
|
|
'@opentelemetry/semantic-conventions': '^1.43.0'
|
|
'@pierre/diffs': '^1.3.6'
|
|
'@sinclair/typebox': '^0.34.52'
|
|
'@slack/bolt': '^5.0.0'
|
|
'@slack/web-api': '^8.1.1'
|
|
'@snazzah/davey': '^0.1.12'
|
|
'@tloncorp/tlon-skill': '^0.5.0'
|
|
'@twurple/api': '^8.1.4'
|
|
'@twurple/auth': '^8.1.4'
|
|
'@twurple/chat': '^8.1.4'
|
|
'@types/express': '^5.0.6'
|
|
'@types/markdown-it': '^14.2.0'
|
|
'@types/node': '26.4.0'
|
|
'@types/qrcode-terminal': '^0.12.2'
|
|
'@types/ws': '^8.18.1'
|
|
'@urbit/aura': '^3.0.0'
|
|
'@urbit/http-api': '^2.3.0'
|
|
'@vector-im/matrix-bot-sdk': '^0.10.0-element.0'
|
|
'@vitest/coverage-v8': '^4.1.11'
|
|
'@whiskeysockets/baileys': '^7.0.0-rc14'
|
|
'acpx': '^0.13.2'
|
|
'ajv': '^8.20.0'
|
|
'better-sqlite3': '^13.0.3'
|
|
'chalk': '^6.0.0'
|
|
'chokidar': '^5.0.0'
|
|
'cli-highlight': '^2.1.11'
|
|
'commander': '^15.0.0'
|
|
'croner': '^10.0.1'
|
|
'discord-api-types': '^0.38.54'
|
|
'dotenv': '^17.4.2'
|
|
'express': '^5.2.1'
|
|
'file-type': '^22.0.2'
|
|
'gaxios': '^8.0.0'
|
|
'google-auth-library': '^11.0.2'
|
|
'grammy': '^1.46.0'
|
|
'hono': '^4.13.5'
|
|
'https-proxy-agent': '^9.1.0'
|
|
'ipaddr.js': '^2.5.0'
|
|
'jiti': '^2.7.0'
|
|
'jose': '^6.2.10'
|
|
'json5': '^2.2.3'
|
|
'jszip': '^3.10.1'
|
|
'linkedom': '^0.18.13'
|
|
'lit': '^3.3.3'
|
|
'long': '^5.3.2'
|
|
'markdown-it': '^15.0.1'
|
|
'music-metadata': '^11.15.0'
|
|
'node-edge-tts': '^1.2.10'
|
|
'nostr-tools': '^2.25.0'
|
|
'openai': '^7.8.0'
|
|
'opusscript': '^0.1.1'
|
|
'osc-progress': '^0.3.3'
|
|
'oxfmt': '^0.65.0'
|
|
'oxlint': '^1.80.0'
|
|
'oxlint-tsgolint': '^7.0.2001'
|
|
'pdfjs-dist': '^6.3.289'
|
|
'playwright-core': '^1.62.1'
|
|
'qrcode-terminal': '^0.12.0'
|
|
'sharp': '^0.35.4'
|
|
'signal-utils': '^0.21.1'
|
|
'sqlite-vec': '^0.1.9'
|
|
'strip-ansi': '^7.2.0'
|
|
'tar': '^7.5.22'
|
|
'tsdown': '^0.22.14'
|
|
'tslog': '^5.1.0'
|
|
'tsx': '^4.23.12'
|
|
'typescript': '7.0.2'
|
|
'undici': '^8.10.0'
|
|
'vitest': '^4.1.11'
|
|
'ws': '^8.21.3'
|
|
'yaml': '^2.9.0'
|
|
'zca-js': '^2.1.2'
|
|
'zod': '^4.5.2'
|
|
|
|
minimumReleaseAge: 2880
|
|
|
|
auditConfig:
|
|
ignoreGhsas:
|
|
- 'GHSA-jfgx-wxx8-mp94'
|
|
- 'GHSA-jmr9-qjv8-65gv'
|
|
|
|
overrides:
|
|
'@noble/hashes': '1.8.0'
|
|
'zod': '^4.5.2'
|
|
'@hanzogui/adapt': '8.3.1'
|
|
'@hanzogui/animate': '8.3.1'
|
|
'@hanzogui/animate-presence': '8.3.1'
|
|
'@hanzogui/animations-css': '8.3.1'
|
|
'@hanzogui/animations-moti': '8.3.1'
|
|
'@hanzogui/animations-react-native': '8.3.1'
|
|
'@hanzogui/babel-plugin': '8.3.1'
|
|
'@hanzogui/build': '8.3.1'
|
|
'@hanzogui/button': '8.3.1'
|
|
'@hanzogui/checkbox-headless': '8.3.1'
|
|
'@hanzogui/cli': '8.3.1'
|
|
'@hanzogui/collapsible': '8.3.1'
|
|
'@hanzogui/collection': '8.3.1'
|
|
'@hanzogui/colors': '8.3.1'
|
|
'@hanzogui/component-helpers': '8.3.1'
|
|
'@hanzogui/compose-refs': '8.3.1'
|
|
'@hanzogui/config': '8.3.1'
|
|
'@hanzogui/config-default': '8.3.1'
|
|
'@hanzogui/constants': '8.3.1'
|
|
'@hanzogui/core': '8.3.1'
|
|
'@hanzogui/create-context': '8.3.1'
|
|
'@hanzogui/create-menu': '8.3.1'
|
|
'@hanzogui/dialog': '8.3.1'
|
|
'@hanzogui/dismissable': '8.3.1'
|
|
'@hanzogui/element': '8.3.1'
|
|
'@hanzogui/floating': '8.3.1'
|
|
'@hanzogui/focus-guard': '8.3.1'
|
|
'@hanzogui/focus-scope': '8.3.1'
|
|
'@hanzogui/focusable': '8.3.1'
|
|
'@hanzogui/font-size': '8.3.1'
|
|
'@hanzogui/get-button-sized': '8.3.1'
|
|
'@hanzogui/get-font-sized': '8.3.1'
|
|
'@hanzogui/get-token': '8.3.1'
|
|
'@hanzogui/group': '8.3.1'
|
|
'@hanzogui/helpers': '8.3.1'
|
|
'@hanzogui/helpers-icon': '8.3.1'
|
|
'@hanzogui/image': '8.3.1'
|
|
'@hanzogui/input': '8.3.1'
|
|
'@hanzogui/label': '8.3.1'
|
|
'@hanzogui/list-item': '8.3.1'
|
|
'@hanzogui/loader': '8.3.1'
|
|
'@hanzogui/lucide-icons-2': '8.3.1'
|
|
'@hanzogui/native': '8.3.1'
|
|
'@hanzogui/next-plugin': '8.3.1'
|
|
'@hanzogui/next-theme': '8.3.1'
|
|
'@hanzogui/polyfill-dev': '8.3.1'
|
|
'@hanzogui/popover': '8.3.1'
|
|
'@hanzogui/popper': '8.3.1'
|
|
'@hanzogui/portal': '8.3.1'
|
|
'@hanzogui/radio-headless': '8.3.1'
|
|
'@hanzogui/react-native-media-driver': '8.3.1'
|
|
'@hanzogui/react-native-svg': '8.3.1'
|
|
'@hanzogui/react-native-use-pressable': '8.3.1'
|
|
'@hanzogui/react-native-use-responder-events': '8.3.1'
|
|
'@hanzogui/react-native-web-lite': '8.3.1'
|
|
'@hanzogui/remove-scroll': '8.3.1'
|
|
'@hanzogui/roving-focus': '8.3.1'
|
|
'@hanzogui/scroll-view': '8.3.1'
|
|
'@hanzogui/separator': '8.3.1'
|
|
'@hanzogui/shapes': '8.3.1'
|
|
'@hanzogui/sheet': '8.3.1'
|
|
'@hanzogui/shell': '8.3.1'
|
|
'@hanzogui/sizable-context': '8.3.1'
|
|
'@hanzogui/spacer': '8.3.1'
|
|
'@hanzogui/stacks': '8.3.1'
|
|
'@hanzogui/start-transition': '8.3.1'
|
|
'@hanzogui/switch-headless': '8.3.1'
|
|
'@hanzogui/telemetry': '8.3.1'
|
|
'@hanzogui/text': '8.3.1'
|
|
'@hanzogui/theme': '8.3.1'
|
|
'@hanzogui/theme-base': '8.3.1'
|
|
'@hanzogui/themes': '8.3.1'
|
|
'@hanzogui/toast': '8.3.1'
|
|
'@hanzogui/use-async': '8.3.1'
|
|
'@hanzogui/use-callback-ref': '8.3.1'
|
|
'@hanzogui/use-constant': '8.3.1'
|
|
'@hanzogui/use-controllable-state': '8.3.1'
|
|
'@hanzogui/use-debounce': '8.3.1'
|
|
'@hanzogui/use-did-finish-ssr': '8.3.1'
|
|
'@hanzogui/use-direction': '8.3.1'
|
|
'@hanzogui/use-escape-keydown': '8.3.1'
|
|
'@hanzogui/use-event': '8.3.1'
|
|
'@hanzogui/use-force-update': '8.3.1'
|
|
'@hanzogui/use-keyboard-visible': '8.3.1'
|
|
'@hanzogui/use-presence': '8.3.1'
|
|
'@hanzogui/use-previous': '8.3.1'
|
|
'@hanzogui/visually-hidden': '8.3.1'
|
|
'@hanzogui/vite-plugin': '8.3.1'
|
|
'@hanzogui/web': '8.3.1'
|
|
'@hanzogui/z-index-stack': '8.3.1'
|
|
hono: '^4.13.5'
|
|
'@hono/node-server': '^2.1.1'
|
|
fast-xml-parser: '^5.11.1'
|
|
fast-xml-builder: '>=1.1.7'
|
|
axios: '^1.20.0'
|
|
protobufjs: '^8.8.0'
|
|
'@protobufjs/utf8': '>=1.1.1'
|
|
uuid: '>=11.1.1'
|
|
'@opentelemetry/sdk-node': '>=0.217.0'
|
|
'@opentelemetry/exporter-prometheus': '>=0.217.0'
|
|
'@opentelemetry/propagator-jaeger': '^2.9.0'
|
|
'@grpc/grpc-js': '^1.14.4'
|
|
basic-ftp: '>=5.3.1'
|
|
brace-expansion: '^5.0.9'
|
|
dompurify: '>=3.4.0'
|
|
fast-uri: '^3.1.5'
|
|
file-type: '>=21.3.1'
|
|
follow-redirects: '>=1.16.0'
|
|
ip-address: '^10.3.1'
|
|
lodash: '>=4.18.0'
|
|
path-to-regexp: '>=8.4.0'
|
|
postcss: '^8.5.26'
|
|
'postcss>nanoid': '^3.3.18'
|
|
'node-llama-cpp>nanoid': '^5.1.16'
|
|
linkify-it: '^5.0.2'
|
|
undici: '^8.10.0'
|
|
ws: '^8.21.3'
|
|
simple-git: '>=3.36.0'
|
|
vite: '>=7.3.2'
|
|
yaml: '>=2.8.3'
|
|
music-metadata: '>=11.12.3'
|
|
picomatch: '>=4.0.4'
|
|
request: 'npm:@cypress/[email protected]'
|
|
request-promise: 'npm:@cypress/[email protected]'
|
|
form-data: '^4.0.6'
|
|
minimatch: '^10.2.6'
|
|
qs: '^6.15.3'
|
|
node-domexception: 'npm:@nolyfill/domexception@^1.0.28'
|
|
'@sinclair/typebox': '^0.34.52'
|
|
tar: '^7.5.22'
|
|
tough-cookie: '4.1.3'
|
|
|
|
allowBuilds:
|
|
'@tloncorp/api@https://codeload.github.com/tloncorp/api-beta/tar.gz/7eede1c1a756977b09f96aa14a92e2b06318ae87': set this to true or false
|