← 返回公开榜单
ne

twwch/next-chat-skills

AI assistant application based on Next.js, supporting Dialog Management and external Skill (script/tool/rule) integration. AI autonomously decides to invoke Skills, executes scripts in a Black box, installs dependencies, and generates files.

本周新增
5 星
近 3 周倍数
1.7x
距上次推送
272 天
距上次发布
272 天
许可证
Apache-2.0

星标增长

每根柱子是这个周期记录下来的 star 增长:优先取逐个 stargazer 到达时间分桶的到达数,还没被 stargazer 扫描覆盖的仓库改用该周期的 star 净增;两个写者都没记录的周期画成虚线空档,而不是当成 0。柱高按各自窗口的峰值归一,两张图不共用坐标轴。指向任意一根柱子, tooltip 里是该周期的九项指标:当前值与周期内的净增。

指向或点击一根柱子,看当天的九项指标。

2/92/142/192/243/13/63/113/16

2026 年 2 月 10 日 新增 16 个星标; 2026 年 2 月 11 日 新增 6 个星标; 2026 年 2 月 13 日 新增 4 个星标; 2026 年 2 月 14 日 新增 1 个星标; 2026 年 2 月 16 日 新增 0 个星标; 2026 年 2 月 17 日 新增 1 个星标; 2026 年 2 月 21 日 新增 1 个星标; 2026 年 2 月 23 日 新增 0 个星标; 2026 年 2 月 25 日 新增 0 个星标; 2026 年 2 月 27 日 新增 3 个星标; 2026 年 2 月 28 日 新增 0 个星标; 2026 年 3 月 1 日 新增 0 个星标; 2026 年 3 月 2 日 新增 1 个星标; 2026 年 3 月 3 日 新增 0 个星标; 2026 年 3 月 4 日 新增 0 个星标; 2026 年 3 月 5 日 新增 1 个星标; 2026 年 3 月 8 日 新增 0 个星标; 2026 年 3 月 10 日 新增 0 个星标; 2026 年 3 月 11 日 新增 0 个星标; 2026 年 3 月 16 日 新增 5 个星标

窗口内最高的一天是 2026 年 2 月 10 日,新增 16 个星标。

证据时间轴

这个项目还没有记录到异动、发布或许可证变化。

README
该仓库存储的文档,若已生成中文翻译则一并显示

Next-Chat-Skills

English | 中文

An AI assistant application built with Next.js, featuring conversation management and external Skill (scripts/tools/rules) integration. The AI autonomously decides when to invoke Skills, executing scripts in a sandboxed environment, installing dependencies, and generating files.

Demo

Demo

Demo

Demo

Tech Stack

  • Framework: Next.js 16 (App Router) + React 19 + TypeScript 5
  • AI: Vercel AI SDK (@ai-sdk/openai)
  • UI: Tailwind CSS 4 + shadcn/ui (Radix UI)
  • Database: Drizzle ORM with SQLite and PostgreSQL backends
  • Skills: Loaded from local ~/.claude/skills directory, parsed from SKILL.md (YAML frontmatter)

Getting Started

1. Install Dependencies

npm install

2. Configure Environment Variables

Copy .env.local.example or create .env.local manually:

# AI Model Configuration
OPENAI_API_KEY=your-api-key
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-4o
SKILLS_DIR=~/.claude/skills

# Storage Configuration: 'sqlite' or 'postgresql'
STORAGE_TYPE=sqlite

# SQLite (used when STORAGE_TYPE=sqlite)
SQLITE_PATH=./data/chat-skills.db

# PostgreSQL (used when STORAGE_TYPE=postgresql)
# DATABASE_URL=postgresql://user:password@localhost:5432/chatskills

3. Start the Development Server

npm run dev

Open http://localhost:3000 to use the application.

Data Storage

The application supports two database backends through an abstract StorageProvider interface, switchable via the STORAGE_TYPE environment variable:

SQLite (Default)

  • Zero configuration, works out of the box
  • Data stored at ./data/chat-skills.db (customizable via SQLITE_PATH)
  • Database files are excluded in .gitignore
  • Suitable for local development and single-instance deployment

PostgreSQL

  • Requires STORAGE_TYPE=postgresql and DATABASE_URL
  • Suitable for multi-instance deployment and production environments
  • Example connection string: postgresql://user:password@localhost:5432/chatskills

Storage Architecture

src/lib/db/
  storage.ts          -- StorageProvider abstract interface
  schema-sqlite.ts    -- SQLite table definitions (Drizzle)
  schema-pg.ts        -- PostgreSQL table definitions (Drizzle)
  sqlite-storage.ts   -- SQLite implementation
  pg-storage.ts       -- PostgreSQL implementation
  index.ts            -- Factory function, selects backend based on STORAGE_TYPE

Database tables are automatically created on application startup — no manual migration required.

Project Structure

src/
  app/
    page.tsx                    -- Main page (chat interface)
    api/
      chat/                     -- AI chat API
      db/                       -- Database CRUD API
        conversations/          -- Conversation CRUD
        settings/               -- Settings read/write
      settings/                 -- Environment variable config API
      skills/                   -- Skill list/details
      skills-execute/           -- Skill script execution
      files-write/              -- File write operations
  components/                   -- UI components
  providers/
    AppProvider.tsx              -- Global state management (Context + DB persistence)
  lib/
    db/                         -- Database abstraction layer
    skills-reader.ts            -- Skill directory reader
    skill-parser.ts             -- SKILL.md parser
    skill-executor.ts           -- Script executor
  types/
    index.ts                    -- TypeScript type definitions
  hooks/                        -- React Hooks

Docker Deployment

The image includes Node.js 20 + Python 3 runtime for Skills script execution.

Using the Pre-built Image

docker pull twwch/next-chat-skills:latest

docker run -d -p 3000:3000 \
  -e OPENAI_API_KEY=your-api-key \
  -e OPENAI_BASE_URL=https://api.openai.com/v1 \
  -e OPENAI_MODEL=gpt-4o \
  -e STORAGE_TYPE=sqlite \
  -v chat-skills-data:/app/data \
  -v ~/.claude/skills:/home/nextjs/.claude/skills:ro \
  twwch/next-chat-skills:latest

With PostgreSQL

docker run -d -p 3000:3000 \
  -e OPENAI_API_KEY=your-api-key \
  -e STORAGE_TYPE=postgresql \
  -e DATABASE_URL=postgresql://user:pass@host:5432/chatskills \
  -v ~/.claude/skills:/home/nextjs/.claude/skills:ro \
  twwch/next-chat-skills:latest

Build Locally

docker build -t next-chat-skills .
docker run -d -p 3000:3000 -e OPENAI_API_KEY=your-key next-chat-skills

CI/CD

GitHub Actions is configured to automatically build and push to DockerHub on pushes to the main branch or v* tags.

Required GitHub repo Settings -> Secrets:

  • DOCKERHUB_USERNAME
  • DOCKERHUB_TOKEN

Available Scripts

npm run dev       # Start development server
npm run build     # Build for production
npm run start     # Start production server
npm run lint      # Run linting

License

This project is licensed under the Apache License 2.0.

页面上的每个数字都来自记录下来的 stargazer 到达时间,没有评分公式,也没有 AI 判定。 任何结论都可以用 /api/v1/repos/{id}/stats 里的原始增量自己重算。