{
  "name": "@leviyuan/lodestar",
  "version": "0.19.2",
  "publishConfig": {
    "access": "public"
  },
  "description": "Lodestar (夜航星) — IM-native frontend for Codex, Claude Agent SDK and DeepSeek Harness via Feishu Card Kit",
  "type": "module",
  "packageManager": "bun@1.3.11",
  "license": "MIT",
  "author": "leviyuan",
  "homepage": "https://github.com/leviyuan/lodestar#readme",
  "bugs": "https://github.com/leviyuan/lodestar/issues",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/leviyuan/lodestar.git"
  },
  "keywords": [
    "feishu",
    "lark",
    "codex",
    "openai",
    "ai",
    "agent",
    "im",
    "chat",
    "card-kit",
    "streaming",
    "lodestar"
  ],
  "scripts": {
    "start": "bun daemon.ts",
    "test": "bun test",
    "test:randomized": "bun test --randomize --seed=17",
    "typecheck": "tsc -p tsconfig.json",
    "ci": "bun run audit:production && bun run typecheck && bun run test && bun run test:randomized && bun run build",
    "audit:production": "bun audit --production",
    "build:daemon": "bun build cli.ts --target=node --packages=external --minify --banner='#!/usr/bin/env node' --outfile=dist/lodestar.js",
    "build:setup": "bun build src/setup-cli.ts --target=node --minify --banner='#!/usr/bin/env node' --outfile=dist/lodestar-setup.js",
    "build:stop": "bun build src/stop-cli.ts --target=node --minify --banner='#!/usr/bin/env node' --outfile=dist/lodestar-stop.js",
    "build:update": "bun build src/update-cli.ts --target=node --minify --banner='#!/usr/bin/env node' --outfile=dist/lodestar-update.js",
    "build:version": "bun build src/version-cli.ts --target=node --minify --banner='#!/usr/bin/env node' --outfile=dist/lodestar-version.js",
    "build:agent": "bun build src/agent-cli.ts --target=node --minify --banner='#!/usr/bin/env node' --outfile=dist/lodestar-agent.js",
    "build": "bun run build:daemon && bun run build:setup && bun run build:stop && bun run build:update && bun run build:version && bun run build:agent && bun run build:dsh",
    "prepublishOnly": "bun run ci",
    "postinstall": "node scripts/postinstall.cjs",
    "build:dsh": "bun build src/dsh-bridge.ts --target=node --packages=external --outfile=dist/dsh-bridge.js"
  },
  "bin": {
    "lodestar-daemon": "./dist/lodestar.js",
    "lodestar-setup": "./dist/lodestar-setup.js",
    "lodestar-stop": "./dist/lodestar-stop.js",
    "lodestar-update": "./dist/lodestar-update.js",
    "lodestar-version": "./dist/lodestar-version.js",
    "lodestar-agent": "./dist/lodestar-agent.js"
  },
  "files": [
    "dist/",
    "docs/",
    "scripts/postinstall.cjs",
    "src/data-dir.cjs",
    "src/managed-skill-cleanup.cjs",
    "README.md",
    "LICENSE"
  ],
  "engines": {
    "node": ">=18.15"
  },
  "dependencies": {
    "@hono/node-server": "1.19.15",
    "@larksuiteoapi/node-sdk": "^1.73.0",
    "@modelcontextprotocol/sdk": "^1.30.0",
    "@resvg/resvg-js": "^2.6.2",
    "@xmldom/xmldom": "0.9.12",
    "cross-spawn": "^7.0.6",
    "fast-uri": "3.1.6",
    "hono": "4.13.5",
    "http-proxy-agent": "^7.0.2",
    "https-proxy-agent": "^7.0.6",
    "ip-address": "10.5.0",
    "mathjax-full": "^3.2.2",
    "node-fetch": "^3.3.2",
    "protobufjs": "7.6.5",
    "qs": "6.16.0",
    "ws": "8.21.3",
    "zod": "^4.4.3"
  },
  "bundleDependencies": [
    "mathjax-full"
  ],
  "overrides": {
    "@hono/node-server": "1.19.15",
    "@xmldom/xmldom": "0.9.12",
    "fast-uri": "3.1.6",
    "hono": "4.13.5",
    "ip-address": "10.5.0",
    "protobufjs": "7.6.5",
    "qs": "6.16.0",
    "ws": "8.21.3"
  },
  "devDependencies": {
    "@anthropic-ai/claude-agent-sdk": "latest",
    "@anthropic-ai/claude-code": "latest",
    "@anthropic-ai/sdk": "latest",
    "@deepseek-ai/cordis": "latest",
    "@deepseek-ai/dsh": "latest",
    "@deepseek-ai/dsh-acp": "0.1.5-rc.1",
    "@deepseek-ai/dsh-acp-app": "0.1.5-rc.1",
    "@deepseek-ai/dsh-agent": "0.1.5-rc.1",
    "@deepseek-ai/dsh-agent-default-model": "0.1.5-rc.1",
    "@deepseek-ai/dsh-agent-instructions": "0.1.5-rc.1",
    "@deepseek-ai/dsh-agent-loop": "0.1.5-rc.1",
    "@deepseek-ai/dsh-agent-presets": "0.1.5-rc.1",
    "@deepseek-ai/dsh-agent-tool-presentation": "0.1.5-rc.1",
    "@deepseek-ai/dsh-anonymous-user-id": "0.1.5-rc.1",
    "@deepseek-ai/dsh-api-gateway": "0.1.5-rc.1",
    "@deepseek-ai/dsh-api-remotes": "0.1.5-rc.1",
    "@deepseek-ai/dsh-api-session-controller": "0.1.5-rc.1",
    "@deepseek-ai/dsh-api-settings-controller": "0.1.5-rc.1",
    "@deepseek-ai/dsh-api-workspace-controller": "0.1.5-rc.1",
    "@deepseek-ai/dsh-api-workspace-files": "0.1.5-rc.1",
    "@deepseek-ai/dsh-app-boot": "0.1.5-rc.1",
    "@deepseek-ai/dsh-atomic-write": "0.1.5-rc.1",
    "@deepseek-ai/dsh-attachment": "0.1.5-rc.1",
    "@deepseek-ai/dsh-attachment-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-authorization": "0.1.5-rc.1",
    "@deepseek-ai/dsh-base": "0.1.5-rc.1",
    "@deepseek-ai/dsh-bash-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-bash-sandbox": "0.1.5-rc.1",
    "@deepseek-ai/dsh-brand": "0.1.5-rc.1",
    "@deepseek-ai/dsh-chunked-list": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-connection": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-file-upload": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-hmr": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-locale": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-modules": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-resources": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-agent-preset": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-approval": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-attachment": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-brand-official": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-chat": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-commands": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-conversation": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-cordis": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-deliverables": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-directory-picker-browse": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-directory-picker-native": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-goal": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-input-trigger": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-jobs": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-layout": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-message-feedback": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-model-selection": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-open-in-app": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-permission-presets": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-plan": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-reference": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-renderer": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-schedule": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-session": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-settings": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-settings-general": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-settings-models": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-settings-plugin-inventory": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-settings-plugins": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-sidebar": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-sidebar-documentpreview": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-sidebar-files": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-sidebar-right": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-skill": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-subagent": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-theme": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-tool": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-trajectory": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-user-questions": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-workflow-run": "0.1.5-rc.1",
    "@deepseek-ai/dsh-client-ui-workspace": "0.1.5-rc.1",
    "@deepseek-ai/dsh-cmdline": "0.1.5-rc.1",
    "@deepseek-ai/dsh-code-runtime": "0.1.5-rc.1",
    "@deepseek-ai/dsh-code-runtime-worker-thread": "0.1.5-rc.1",
    "@deepseek-ai/dsh-command-compact": "0.1.5-rc.1",
    "@deepseek-ai/dsh-command-feedback": "0.1.5-rc.1",
    "@deepseek-ai/dsh-command-goal": "0.1.5-rc.1",
    "@deepseek-ai/dsh-commands": "0.1.5-rc.1",
    "@deepseek-ai/dsh-compaction": "0.1.5-rc.1",
    "@deepseek-ai/dsh-compaction-basic": "0.1.5-rc.1",
    "@deepseek-ai/dsh-compaction-tool-result-pruner": "0.1.5-rc.1",
    "@deepseek-ai/dsh-cordis-client-runner": "0.1.5-rc.1",
    "@deepseek-ai/dsh-cordis-host-runner": "0.1.5-rc.1",
    "@deepseek-ai/dsh-credentials": "0.1.5-rc.1",
    "@deepseek-ai/dsh-credentials-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-deepseek-llm-api-extensions": "0.1.5-rc.1",
    "@deepseek-ai/dsh-deque": "0.1.5-rc.1",
    "@deepseek-ai/dsh-file-reference": "0.1.5-rc.1",
    "@deepseek-ai/dsh-file-reference-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-fs": "0.1.5-rc.1",
    "@deepseek-ai/dsh-fs-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-fs-observation-policy": "0.1.5-rc.1",
    "@deepseek-ai/dsh-fs-sandbox": "0.1.5-rc.1",
    "@deepseek-ai/dsh-goal": "0.1.5-rc.1",
    "@deepseek-ai/dsh-goal-round-driver": "0.1.5-rc.1",
    "@deepseek-ai/dsh-headless": "0.1.5-rc.1",
    "@deepseek-ai/dsh-home-paths": "0.1.5-rc.1",
    "@deepseek-ai/dsh-hook-protocol": "0.1.5-rc.1",
    "@deepseek-ai/dsh-hooks-claude-code": "0.1.5-rc.1",
    "@deepseek-ai/dsh-hooks-codex": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-directory-picker": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-directory-picker-auto": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-directory-picker-browse": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-directory-picker-native": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-frontend-static": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-open-in-app": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-plugin-inventory": "0.1.5-rc.1",
    "@deepseek-ai/dsh-host-webserver": "0.1.5-rc.1",
    "@deepseek-ai/dsh-http-proxy": "0.1.5-rc.1",
    "@deepseek-ai/dsh-invariants": "0.1.5-rc.1",
    "@deepseek-ai/dsh-jobs": "0.1.5-rc.1",
    "@deepseek-ai/dsh-jobs-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-launch-environment": "0.1.5-rc.1",
    "@deepseek-ai/dsh-llm": "0.1.5-rc.1",
    "@deepseek-ai/dsh-llm-deepseek": "0.1.5-rc.1",
    "@deepseek-ai/dsh-llm-pi-ai": "0.1.5-rc.1",
    "@deepseek-ai/dsh-llm-retry": "0.1.5-rc.1",
    "@deepseek-ai/dsh-mcp-client": "0.1.5-rc.1",
    "@deepseek-ai/dsh-message-feedback": "0.1.5-rc.1",
    "@deepseek-ai/dsh-native-command": "0.1.5-rc.1",
    "@deepseek-ai/dsh-output-retention": "0.1.5-rc.1",
    "@deepseek-ai/dsh-package-manifest": "0.1.5-rc.1",
    "@deepseek-ai/dsh-permission-presets": "0.1.5-rc.1",
    "@deepseek-ai/dsh-persona": "0.1.5-rc.1",
    "@deepseek-ai/dsh-plan-mode": "0.1.5-rc.1",
    "@deepseek-ai/dsh-plugin-package-inventory-deepseek": "0.1.5-rc.1",
    "@deepseek-ai/dsh-pwsh-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-pwsh-sandbox": "0.1.5-rc.1",
    "@deepseek-ai/dsh-repeat-tool-reminder": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sandbox": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sandbox-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sandbox-policy": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sandbox-windows-acl": "0.1.5-rc.1",
    "@deepseek-ai/dsh-schedule": "0.1.5-rc.1",
    "@deepseek-ai/dsh-scope": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sdk-app": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sdk-jsonrpc-server": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sdk-minimal": "0.1.5-rc.1",
    "@deepseek-ai/dsh-sdk-protocol": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-checkpoint-policy": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-format": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-format-catalog": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-format-v0-to-v1": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-format-v1-to-v2": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-format-v2-to-v3": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-log-deepseek": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-log-export": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-persistence": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-persistence-jsonl": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-projection": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-projection-cache": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-query": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-query-sqlite": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-reference": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-stats": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-telemetry": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-telemetry-otel": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-title": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-title-first-prompt-llm": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-title-llm": "0.1.5-rc.1",
    "@deepseek-ai/dsh-session-turn-outline": "0.1.5-rc.1",
    "@deepseek-ai/dsh-settings": "0.1.5-rc.1",
    "@deepseek-ai/dsh-settings-file": "0.1.5-rc.1",
    "@deepseek-ai/dsh-shell": "0.1.5-rc.1",
    "@deepseek-ai/dsh-shell-env": "0.1.5-rc.1",
    "@deepseek-ai/dsh-skill": "0.1.5-rc.1",
    "@deepseek-ai/dsh-skill-badge": "0.1.5-rc.1",
    "@deepseek-ai/dsh-skill-filesystem": "0.1.5-rc.1",
    "@deepseek-ai/dsh-spill": "0.1.5-rc.1",
    "@deepseek-ai/dsh-spill-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-spill-policy": "0.1.5-rc.1",
    "@deepseek-ai/dsh-storage": "0.1.5-rc.1",
    "@deepseek-ai/dsh-storage-domain": "0.1.5-rc.1",
    "@deepseek-ai/dsh-storage-json": "0.1.5-rc.1",
    "@deepseek-ai/dsh-subagent": "0.1.5-rc.1",
    "@deepseek-ai/dsh-subagent-fork-in-process": "0.1.5-rc.1",
    "@deepseek-ai/dsh-subagent-in-process-driver": "0.1.5-rc.1",
    "@deepseek-ai/dsh-subagent-spawn-in-process": "0.1.5-rc.1",
    "@deepseek-ai/dsh-subprocess": "0.1.5-rc.1",
    "@deepseek-ai/dsh-subprocess-local": "0.1.5-rc.1",
    "@deepseek-ai/dsh-system-prompt": "0.1.5-rc.1",
    "@deepseek-ai/dsh-terminal": "0.1.5-rc.1",
    "@deepseek-ai/dsh-terminal-bash": "0.1.5-rc.1",
    "@deepseek-ai/dsh-time-context": "0.1.5-rc.1",
    "@deepseek-ai/dsh-timeout": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tmux-context": "0.1.5-rc.1",
    "@deepseek-ai/dsh-token-meter": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-ask-user": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-bash": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-bash-persistent": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-call-timeout-policy": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-cordis": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-fs": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-fs-search": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-goal": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-jobs": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-present": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-pwsh": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-pwsh-persistent": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-ralph": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-skill": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-str-replace-editor": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-subagent": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-subagent-control": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-todo": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-web": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tool-workflow": "0.1.5-rc.1",
    "@deepseek-ai/dsh-tools": "0.1.5-rc.1",
    "@deepseek-ai/dsh-typert-loader": "0.1.5-rc.1",
    "@deepseek-ai/dsh-typert-protocol": "0.1.5-rc.1",
    "@deepseek-ai/dsh-typert-registry": "0.1.5-rc.1",
    "@deepseek-ai/dsh-user-approval": "0.1.5-rc.1",
    "@deepseek-ai/dsh-user-questions": "0.1.5-rc.1",
    "@deepseek-ai/dsh-util-crypto": "0.1.5-rc.1",
    "@deepseek-ai/dsh-util-time": "0.1.5-rc.1",
    "@deepseek-ai/dsh-util-values": "0.1.5-rc.1",
    "@deepseek-ai/dsh-util-workspace-path": "0.1.5-rc.1",
    "@deepseek-ai/dsh-web": "0.1.5-rc.1",
    "@deepseek-ai/dsh-web-app": "0.1.5-rc.1",
    "@deepseek-ai/dsh-web-fetch-http": "0.1.5-rc.1",
    "@deepseek-ai/dsh-web-frontend": "0.1.5-rc.1",
    "@deepseek-ai/dsh-web-search-deepseek": "0.1.5-rc.1",
    "@deepseek-ai/dsh-webhook": "0.1.5-rc.1",
    "@deepseek-ai/dsh-webhook-github": "0.1.5-rc.1",
    "@deepseek-ai/dsh-win32-process": "0.1.5-rc.1",
    "@deepseek-ai/dsh-workflow": "0.1.5-rc.1",
    "@deepseek-ai/dsh-workflow-worker-thread": "0.1.5-rc.1",
    "@deepseek-ai/dsh-workspace": "0.1.5-rc.1",
    "@openai/codex": "latest",
    "@types/bun": "1.3.14",
    "@types/cross-spawn": "6.0.6",
    "@types/node": "18",
    "typescript": "5.9.3"
  },
  "trustedDependencies": [
    "@deepseek-ai/dsh-subprocess-local",
    "koffi"
  ],
  "optionalDependencies": {
    "undici": "^6.28.1"
  }
}
