├── .dockerignore ├── .env.example ├── .github ├── FUNDING.yml └── workflows │ └── docker.yml ├── .gitignore ├── .node-version ├── .npmrc ├── .vscode ├── extensions.json ├── launch.json └── settings.json ├── AGENTS.md ├── CLAUDE.md ├── CODE_OF_CONDUCT.md ├── Dockerfile ├── LICENSE ├── README.md ├── README.zh-CN.md ├── data └── .gitkeep ├── docker-compose.dev.yml ├── docker-compose.yml ├── drizzle.config.ts ├── drizzle ├── 0000_flawless_monster_badoon.sql └── meta │ ├── 0000_snapshot.json │ └── _journal.json ├── eslint.config.js ├── images ├── chat-zh-CN.png └── chat.png ├── messages ├── en.json └── zh-CN.json ├── package.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── project.inlang ├── .gitignore ├── project_id └── settings.json ├── src ├── ai │ ├── config.ts │ ├── index.ts │ └── mcp.ts ├── app │ ├── chat.tsx │ ├── help.tsx │ ├── index.tsx │ └── language.tsx ├── auth │ └── index.ts ├── cli.ts ├── components │ ├── chat │ │ ├── avatar.tsx │ │ ├── header.tsx │ │ ├── history.tsx │ │ ├── index.tsx │ │ ├── messages.tsx │ │ ├── models.tsx │ │ └── welcome.tsx │ ├── footer │ │ └── index.tsx │ └── ui │ │ ├── markdown │ │ ├── index.tsx │ │ └── worker.js │ │ └── scroller.tsx ├── config │ ├── env.ts │ ├── goodbye.ts │ └── index.ts ├── context │ ├── chat.tsx │ └── global.tsx ├── db │ ├── conversations.ts │ ├── index.ts │ ├── schema.ts │ └── user.ts ├── hooks │ └── chat │ │ ├── index.ts │ │ ├── prompt.ts │ │ └── utils.ts ├── index.ts ├── kv │ └── index.ts ├── server.ts └── utils │ ├── env.ts │ ├── flags.ts │ ├── logger.ts │ ├── login.ts │ ├── polyfill.ts │ ├── ssh.ts │ └── track.ts ├── tsconfig.json ├── tsdown.config.ts └── types └── chat.d.ts /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.dockerignore -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.env.example -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.github/workflows/docker.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.github/workflows/docker.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.gitignore -------------------------------------------------------------------------------- /.node-version: -------------------------------------------------------------------------------- 1 | 22 2 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | shamefully-hoist=true -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /AGENTS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/AGENTS.md -------------------------------------------------------------------------------- /CLAUDE.md: -------------------------------------------------------------------------------- 1 | AGENTS.md -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/README.md -------------------------------------------------------------------------------- /README.zh-CN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/README.zh-CN.md -------------------------------------------------------------------------------- /data/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docker-compose.dev.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/docker-compose.dev.yml -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /drizzle.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/drizzle.config.ts -------------------------------------------------------------------------------- /drizzle/0000_flawless_monster_badoon.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/drizzle/0000_flawless_monster_badoon.sql -------------------------------------------------------------------------------- /drizzle/meta/0000_snapshot.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/drizzle/meta/0000_snapshot.json -------------------------------------------------------------------------------- /drizzle/meta/_journal.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/drizzle/meta/_journal.json -------------------------------------------------------------------------------- /eslint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/eslint.config.js -------------------------------------------------------------------------------- /images/chat-zh-CN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/images/chat-zh-CN.png -------------------------------------------------------------------------------- /images/chat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/images/chat.png -------------------------------------------------------------------------------- /messages/en.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/messages/en.json -------------------------------------------------------------------------------- /messages/zh-CN.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/messages/zh-CN.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/pnpm-workspace.yaml -------------------------------------------------------------------------------- /project.inlang/.gitignore: -------------------------------------------------------------------------------- 1 | cache -------------------------------------------------------------------------------- /project.inlang/project_id: -------------------------------------------------------------------------------- 1 | M69qnYKAaWCH2BeXiO -------------------------------------------------------------------------------- /project.inlang/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/project.inlang/settings.json -------------------------------------------------------------------------------- /src/ai/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/ai/config.ts -------------------------------------------------------------------------------- /src/ai/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/ai/index.ts -------------------------------------------------------------------------------- /src/ai/mcp.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/ai/mcp.ts -------------------------------------------------------------------------------- /src/app/chat.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/app/chat.tsx -------------------------------------------------------------------------------- /src/app/help.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/app/help.tsx -------------------------------------------------------------------------------- /src/app/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/app/index.tsx -------------------------------------------------------------------------------- /src/app/language.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/app/language.tsx -------------------------------------------------------------------------------- /src/auth/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/auth/index.ts -------------------------------------------------------------------------------- /src/cli.ts: -------------------------------------------------------------------------------- 1 | export * from './app' 2 | -------------------------------------------------------------------------------- /src/components/chat/avatar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/chat/avatar.tsx -------------------------------------------------------------------------------- /src/components/chat/header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/chat/header.tsx -------------------------------------------------------------------------------- /src/components/chat/history.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/chat/history.tsx -------------------------------------------------------------------------------- /src/components/chat/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/chat/index.tsx -------------------------------------------------------------------------------- /src/components/chat/messages.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/chat/messages.tsx -------------------------------------------------------------------------------- /src/components/chat/models.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/chat/models.tsx -------------------------------------------------------------------------------- /src/components/chat/welcome.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/chat/welcome.tsx -------------------------------------------------------------------------------- /src/components/footer/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/footer/index.tsx -------------------------------------------------------------------------------- /src/components/ui/markdown/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/ui/markdown/index.tsx -------------------------------------------------------------------------------- /src/components/ui/markdown/worker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/ui/markdown/worker.js -------------------------------------------------------------------------------- /src/components/ui/scroller.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/components/ui/scroller.tsx -------------------------------------------------------------------------------- /src/config/env.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/config/env.ts -------------------------------------------------------------------------------- /src/config/goodbye.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/config/goodbye.ts -------------------------------------------------------------------------------- /src/config/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/config/index.ts -------------------------------------------------------------------------------- /src/context/chat.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/context/chat.tsx -------------------------------------------------------------------------------- /src/context/global.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/context/global.tsx -------------------------------------------------------------------------------- /src/db/conversations.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/db/conversations.ts -------------------------------------------------------------------------------- /src/db/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/db/index.ts -------------------------------------------------------------------------------- /src/db/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/db/schema.ts -------------------------------------------------------------------------------- /src/db/user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/db/user.ts -------------------------------------------------------------------------------- /src/hooks/chat/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/hooks/chat/index.ts -------------------------------------------------------------------------------- /src/hooks/chat/prompt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/hooks/chat/prompt.ts -------------------------------------------------------------------------------- /src/hooks/chat/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/hooks/chat/utils.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/kv/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/kv/index.ts -------------------------------------------------------------------------------- /src/server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/server.ts -------------------------------------------------------------------------------- /src/utils/env.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/utils/env.ts -------------------------------------------------------------------------------- /src/utils/flags.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/utils/flags.ts -------------------------------------------------------------------------------- /src/utils/logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/utils/logger.ts -------------------------------------------------------------------------------- /src/utils/login.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/utils/login.ts -------------------------------------------------------------------------------- /src/utils/polyfill.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/utils/polyfill.ts -------------------------------------------------------------------------------- /src/utils/ssh.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/utils/ssh.ts -------------------------------------------------------------------------------- /src/utils/track.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/src/utils/track.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tsdown.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/tsdown.config.ts -------------------------------------------------------------------------------- /types/chat.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/miantiao-me/ssh-ai-chat/HEAD/types/chat.d.ts --------------------------------------------------------------------------------