news 2026/7/5 18:28:37

CANN / cannbot-skills 代理文档

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN / cannbot-skills 代理文档

AGENTS.md — cannbot-insight

【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills

Project

CANNBot-Insight: Session-level observability tool for LLM coding agents (opencode). Next.js 16 App Router + Prisma + SQLite. Chinese/English mixed UI. UI version tracked insrc/lib/version.ts(v0.31) —package.jsonversion (0.02) is not the display version.

CLI Frontend (New - 2026-06)

Adding a CLI frontend alongside the existing web UI. Backend remains unchanged; CLI is a pure API client.

Tech Stack

  • Ink 7.0.6+ React 19.2.7 (ESM required:"type": "module"in package.json)
  • Commander.jsfor command parsing
  • string-width+cli-truncatefor CJK character width handling
  • Run withtsx(not ts-node) due to yoga-layout top-level await

Key Decisions (PoC Verified)

  • No third-party Ink components— ink-table/ink-select/ink-spinner all incompatible with Ink v7
  • Self-implement all components: DataTable, Spinner (10 lines), TextInput (30 lines)
  • Dual render strategy: ink-testing-library for tests (has lastFrame), Ink native render for production
  • stdin handling:resume() + setRawMode(true)before Ink render, restore on exit
  • Pagination over virtual scroll: pageSize=20, n/p keys (Ink re-renders full tree anyway)
  • CLI types useApiprefix(ApiSessionListItem) to distinguish from shared types

Architecture

src/cli/ ├── index.ts # Commander entry point ├── client.ts # API client (15 endpoints) ├── types.ts # Api-prefixed response types ├── errors.ts # Error hierarchy ├── config.ts # Config management ├── commands/ # CLI commands (sessions, session, turn, search, compare, stats, import, delete, config) ├── hooks/ # useApi, useKeyboard, useNavigation, useTable ├── utils/ # format, colors, table (with padEndVisual/truncateVisual) └── tui/ ├── App.tsx # Root component (stdin switching, useMemo client) ├── screens/ # SessionList, SessionDetail, TurnDetail, CompareView, ImportPanel ├── tabs/ # OverviewTab, TurnsTab, WorkflowTab, SubagentsTab, SkillsTab, BridgesTab, ContextTab └── components/ # StatusBar, KeyBar, DataTable, MetricCards, AsciiBar, TreeView, TabBar, Spinner, TextInput

Dev Commands (CLI)

CommandNotes
npx tsx src/cli/index.ts tuiLaunch TUI mode (requires real TTY)
npx tsx src/cli/index.ts sessionsList sessions (command mode)
npx tsx src/cli/index.ts statsGlobal statistics
npm run test:cliCLI tests (uses ink-testing-library)

CLI Constraints

  • Ink v7 native render() has no lastFrame/frames/output— only ink-testing-library provides these
  • ESM strict: Cannot use require(), must use import
  • CJ width: Chinese characters = 2 columns, use string-width for all text measurement
  • No PTY in tests: TUI E2E tests only run manually, CI runs component tests only
  • Version: Import from@/lib/version, never hardcode

Dev Commands

CommandNotes
./start.shAuto port (21025+), kills existing dev server via.next/dev/lockPID, runsprisma migrate dev+next dev
./start.sh -uSame but also runsnpm installfirst
npm run devRuns on default port 3000 — prefer./start.shinstead
npm run buildStandardnext build
npm run testvitest run— 187 tests (web)
npm run test:cliCLI frontend tests
npm run linteslint(flat config,eslint.config.mjs) — run after edits to verify

Architecture

Data Flow

opencode sessions.db (external) → better-sqlite3 read → opencode-db adapter → normalize → turn-split → bridge-builder → execution-split → merge → contenteditable="false">【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/5 18:27:52

Colorbuddy.nvim性能优化:让你的配色方案加载速度提升50%

Colorbuddy.nvim性能优化:让你的配色方案加载速度提升50% 【免费下载链接】colorbuddy.nvim Your color buddy for making cool neovim color schemes 项目地址: https://gitcode.com/gh_mirrors/co/colorbuddy.nvim Colorbuddy.nvim是一款强大的Neovim配色方…

作者头像 李华
网站建设 2026/7/5 18:25:11

模型评测人工复核:自动分数高,也要抽样看答案

模型评测人工复核:自动分数高,也要抽样看答案 一、自动评测会漏掉细节 大模型评测越来越依赖自动指标和 LLM Judge。它们能提高效率,但自动分数高不代表答案真的可用。事实错误、语气不合适、引用错位、细节遗漏、过度自信,都可能…

作者头像 李华
网站建设 2026/7/5 18:24:36

RDiscount性能优化:7个技巧提升你的Markdown渲染速度

RDiscount性能优化:7个技巧提升你的Markdown渲染速度 【免费下载链接】rdiscount Discount (For Ruby) Implementation of John Grubers Markdown 项目地址: https://gitcode.com/gh_mirrors/rd/rdiscount RDiscount作为Ruby生态中高性能的Markdown解析器&am…

作者头像 李华
网站建设 2026/7/5 18:24:18

CANN/cannbot-skills: CANNBot-Insight 可观测工具

CANNBot-Insight 【免费下载链接】cannbot-skills CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。 项目地址: https://gitcode.com/cann/cannbot-skills LLM 编码 Agent 的 Session 级可观测工具。辅助长上下…

作者头像 李华
网站建设 2026/7/5 18:23:48

Rain安全与资源管理:CPU、内存、GPU资源调度的完整解决方案

Rain安全与资源管理:CPU、内存、GPU资源调度的完整解决方案 【免费下载链接】rain Framework for large distributed pipelines 项目地址: https://gitcode.com/gh_mirrors/rain/rain Rain作为一个开源分布式计算框架,为大规模任务流水线处理提供…

作者头像 李华
网站建设 2026/7/5 18:22:15

DeepForge完全指南:现代深度学习开发环境如何重塑AI工作流?

DeepForge完全指南:现代深度学习开发环境如何重塑AI工作流? 【免费下载链接】deepforge A modern development environment for deep learning 项目地址: https://gitcode.com/gh_mirrors/de/deepforge 在当今AI技术飞速发展的时代,深…

作者头像 李华