AgentStack
MCP unreviewed MIT Self-run

Ocean Cc Cli

mcp-artljn-ocean-cc-cli · by ArtLjn

Enhanced Claude Code CLI — Multi-model switching, structured memory (SQLite+FTS5), multi-agent collaboration, skill system & IM integration

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add mcp-artljn-ocean-cc-cli

Open-source listing — not yet scanned by AgentStack. Follow the source repository for install instructions.

Security review

⚠ Flagged

1 finding(s); flagged for manual review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures
  • high Pipes remote content directly into a shell (remote code execution).

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Ocean Cc Cli? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Ocean CLI — Enhanced AI Coding Assistant

Multi-Model · Structured Memory · Multi-Agent Collaboration

A powerful enhanced fork of Claude Code CLI with structured memory, multi-model switching, multi-agent parallelism, and extensible skill system.

Claude GLM Doubao DeepSeek Gemini Codex — switch with one command /model

[](LICENSE) [](README.md)

Features · Quick Start · Docs · Architecture


> Keywords: AI CLI tool, Claude Code CLI, multi-model CLI, structured memory, SQLite FTS5, multi-agent collaboration, developer productivity, terminal AI assistant, LLM tools, coding assistant, Claude Code fork, Ocean CLI, 智谱GLM, 豆包, DeepSeek, MCP protocol, Ink TUI, skill system, auto mode, bilingual assistant


功能

  • 完整的 Ink TUI 交互界面(与官方 Claude Code 一致)
  • 多模型接入 — Claude / 智谱GLM / 豆包 / DeepSeek,/model 一键切换
  • Auto Mode — AI 分类器自动审批安全操作,危险操作仍需确认
  • 双层记忆系统 — 纯 SQLite 结构化事实存储(6 种分类 + 全局/项目双层隔离)+ 自动提取 + 语义去重 + AutoDream 清洗 — [使用指南](docs/tutorial-memory.md)
  • 多模型协作/multi-agent 按角色分工,真实并行调用 — [使用指南](docs/tutorial-multi-agent.md)
  • 技能系统/skillify 从会话提炼技能,支持脚本自动生成 — [使用指南](docs/tutorial-skills.md)
  • Channel IM 集成 — 飞书/钉钉/Telegram 远程控制 Agent — [使用指南](docs/tutorial-channel.md)
  • Hook 系统 — 27 种事件、4 种类型,高度可定制 — [使用指南](docs/tutorial-hooks.md)
  • 智能过载重试机制,自动处理 API 限流和超时

核心功能

1. 多模型接入

支持 Anthropic 官方模型和第三方兼容 API,通过 custom-providers.json 配置:

{
  "glm": {
    "name": "智谱GLM",
    "type": "anthropic",
    "baseUrl": "https://open.bigmodel.cn/api/anthropic",
    "apiKeyEnv": "YOUR_API_KEY",
    "models": [
      { "id": "glm-5", "name": "GLM-5", "contextLength": 128000 }
    ]
  }
}
# 会话中一键切换
/model glm:glm-5
/model claude-opus-4-6

> 内置智能过载重试:API 限流时自动指数退避,无需手动干预。

2. Auto Mode

AI 分类器自动审批工具调用,所有模型提供商均可使用:

# 命令行启用
ocean --permission-mode auto

# 永久启用(~/.claude/settings.json)
{ "permissions": { "defaultMode": "auto" } }

3. 双层记忆系统

核心特性

  • 双层隔离 — 用户偏好全局共享,项目知识跟随项目,不串台
  • 自动提取 — 每轮对话结束,后台 fork agent 自动提取用户偏好、项目结构、技术栈等事实写入 SQLite
  • 分层自动注入 — 每轮对话前智能预取相关记忆,identity/workflow/项目概览始终注入,coding_style按技术栈匹配注入,其他记忆按相关性注入,总token占比

SQLite 表结构详解

每个数据库包含 4 张核心表 + 1 个 FTS5 虚拟表 + 1 个统计表:

facts — 事实表 存储所有记忆事实,每条事实独立成行,支持信任评分和检索统计。

| 字段 | 类型 | 说明 | |------|------|------| | fact_id | INTEGER PK | 自增主键 | | content | TEXT UNIQUE | 事实内容(唯一约束防重复) | | category | TEXT | 分类:identity / codingstyle / toolpref / workflow / project / general | | tags | TEXT | 逗号分隔标签(含中文 bigram 预分词结果) | | keywords | TEXT | 主题关键词 JSON(写入时自动提取,如 [{"kw":"邮箱","w":0.9}]) | | trust_score | REAL | 信任评分(0.0~1.0,默认 0.5) | | retrieval_count | INTEGER | 被检索次数 | | helpful_count | INTEGER | 被标记 helpful 次数 | | created_at | TEXT | 创建时间(本地时区) | | updated_at | TEXT | 最后更新时间(本地时区) |

entities — 实体表 自动从事实内容中提取的命名实体,支持别名和类型分类。

| 字段 | 类型 | 说明 | |------|------|------| | entity_id | INTEGER PK | 自增主键 | | name | TEXT | 实体名称 | | entity_type | TEXT | 自动分类:person / technology / topic | | aliases | TEXT | 别名(逗号分隔) | | created_at | TEXT | 创建时间 |

> entity_type 分类规则:纯中文 2-4 字 → person(可能是人名),含英文 → technology,中文 5+ 字 → topic

fact_entities — 事实-实体关联表 多对多关联,一条事实可关联多个实体,一个实体可被多条事实引用。CASCADE 删除保证一致性。

| 字段 | 类型 | 说明 | |------|------|------| | fact_id | INTEGER FK | 关联 facts.factid | | entity_id | INTEGER FK | 关联 entities.entityid |

> 联合主键 (fact_id, entity_id),INSERT OR IGNORE 防重复关联

facts_fts — FTS5 全文索引(虚拟表) 绑定 facts 表,通过触发器自动同步。支持中文 bigram 分词检索。

| 字段 | 说明 | |------|------| | content | 同步自 facts.content | | tags | 同步自 facts.tags(含 bigram 预分词) |

> 三个触发器(INSERT/UPDATE/DELETE)保证 FTS5 索引与 facts 表实时同步

category_token_stats — 类别词频统计表 增量维护每个 token 在各 category 中的文档频率,用于计算关键词的类别特异性权重。

| 字段 | 类型 | 说明 | |------|------|------| | category | TEXT | 分类名 | | token | TEXT | 关键词 token | | df | INTEGER | 文档频率(该 token 在该 category 中出现的事实数) |

> 联合主键 (category, token),ON CONFLICT 时 df = df + 1

4. 多模型协作

配置多个 AI 模型按角色分工,真实并行调用

# 查看可用模型
/agent-config models

# 用预设创建 agent
/agent-config preset architect --model glm:glm-5.1
/agent-config preset reviewer --model vk:doubao-seed-2.0-pro

# 发起协作任务
/multi-agent 设计一个高并发缓存系统

内置 5 个角色预设:架构师、审查员、实现者、测试专家、DevOps。

5. 技能系统

从成功的工作流中自动提炼可复用技能:

# 手动提炼当前会话为技能
/skillify 创建文件并运行验证的工作流

自动提炼:任务完成后,系统自动检测可复用流程,提示确认后生成完整技能文件:

.claude/skills//
├── SKILL.md          # 技能定义(触发条件、步骤、成功标准)
└── scripts/          # 可执行脚本(数据处理、模板生成等)
    └── process.py

6. Channel IM 集成

通过 MCP 协议接入 IM 平台,远程控制 Agent:

# 启动时绑定
ocean --channels server:feishu

# 会话中动态连接(无需重启)
❯ /feishu                    # 快速连接飞书
❯ /channel connect dingtalk  # 连接钉钉
❯ /channel disconnect feishu  # 断开连接
  • 入站:IM 消息 → Agent 接收执行
  • 出站:Agent 结果 → IM 回复
  • 权限中继:工具审批转发到 IM,远程回复 yes/no
  • 动态连接:会话中途 /feishu 一键连接,离开后断开

已验证平台:飞书、钉钉


快速开始

npm 安装(推荐)

> 前提:需要 Bun >= 1.3.5

# 全局安装
npm install -g @morningljn/ocean

# 或一次性使用
npx @morningljn/ocean

macOS / Linux(一键安装)

curl -fsSL https://raw.githubusercontent.com/ArtLjn/ocean-cc-cli/main/install.sh | bash

> 脚本会自动检测平台、安装 Bun、克隆仓库、构建并部署到 ~/.local/bin/ocean

国内用户(Gitee 镜像)

国内访问 GitHub 较慢,脚本内置多源回退,优先从 Gitee 拉取:

curl -fsSL https://gitee.com/morning-ljn/ocean-cc-cli/raw/main/install.sh | bash

Windows(PowerShell)

iwr -useb https://raw.githubusercontent.com/ArtLjn/ocean-cc-cli/main/install.ps1 | iex

国内用户:

iwr -useb https://gitee.com/morning-ljn/ocean-cc-cli/raw/main/install.ps1 | iex

> Windows 安装使用 Bun 直接运行,无需 C 编译器。推荐在 WSL 中使用 bash 脚本获得完整体验。

手动安装

# 1. 安装 Bun
curl -fsSL https://bun.sh/install | bash

# 2. 克隆并构建(国内用 Gitee)
git clone https://github.com/ArtLjn/ocean-cc-cli.git && cd ocean-cc-cli
# git clone https://gitee.com/morning-ljn/ocean-cc-cli.git && cd ocean-cc-cli
bun install && ./build.sh

启动

ocean                          # 交互 TUI 模式
ocean --permission-mode auto   # Auto Mode
ocean -p "your prompt"         # 无头模式

IDE 集成

Ocean CLI 可替换 Claude Code 官方 CLI,在 IDE 插件中直接使用。安装 Ocean 后,按以下步骤配置你的 IDE:

VS Code / Cursor / Trae CN

安装 Claude Code 扩展后,在 IDE 的 settings.json 中添加:

{
  "claudeCode.claudeProcessWrapper": "/Users//.local/bin/ocean"
}

> 配置文件路径: > - VS Code:~/.vscode/settings.json(全局)或项目 .vscode/settings.json > - Cursor:~/.cursor/settings.json(全局)或项目 .cursor/settings.json > - Trae CN:~/.trae-cn/settings.json(全局)或项目 .trae/settings.json

JetBrains(IntelliJ / PyCharm / WebStorm 等)

  1. 打开 Settings → Tools → Claude Code [Beta]
  2. Claude command 修改为 ocean(确保 ~/.local/bin 在 PATH 中)

Qoder

与 VS Code 方式相同,在 Qoder 的 settings.json 中配置 claudeCode.claudeProcessWrapper

验证配置

启动 IDE 中的 Claude Code 面板,输入 /model,如果看到 Ocean CLI 的模型列表(含自定义 Provider),说明配置成功。


技术栈

| 类别 | 技术 | |------|------| | 运行时 | Bun | | 语言 | TypeScript | | 终端 UI | React + Ink | | CLI 解析 | Commander.js | | API | Anthropic SDK | | 协议 | MCP, LSP | | 记忆存储 | SQLite (bun:sqlite) + FTS5(全局+项目双层) |


项目结构

├── src/                    # 主源码
│   ├── agents/             # Agent 实现
│   ├── skills/             # 技能系统
│   │   └── bundled/        # 内置技能(skillify、auto-skillify 等)
│   ├── memory/             # 双层记忆系统(HolographicProvider + 全局/项目 SQLite)
│   ├── providers/          # 模型提供商接入
│   ├── utils/hooks/        # Hook 系统核心
│   └── cli/                # 命令行界面
├── docs/                   # 文档 & 教程
├── static/                 # 静态资源
└── build.sh                # 构建脚本

教程目录

| 教程 | 说明 | |------|------| | [快速开始](docs/tutorial-getting-started.md) | 安装、构建、首次使用 | | [自定义模型接入](docs/tutorial-custom-providers.md) | 智谱GLM/豆包/DeepSeek 配置 | | [记忆系统](docs/tutorial-memory.md) | 手动记忆 + 自动提取 + AutoDream | | [多模型协作](docs/tutorial-multi-agent.md) | 角色分工 + 并行调用 | | [技能系统](docs/tutorial-skills.md) | 技能创建、提炼、脚本生成 | | [Channel 集成](docs/tutorial-channel.md) | 飞书/钉钉远程控制 | | [Hook 系统](docs/tutorial-hooks.md) | 事件类型、配置格式、实用示例 |

架构参考

| 文档 | 说明 | |------|------| | [KAIROS 持久助手](docs/02-kairos.md) | 后台持续运行、自动做梦、Cron 调度 | | [Coordinator 多 Agent](docs/04-coordinator.md) | 指挥官+执行者编排模式 | | [Bridge 远程控制](docs/06-bridge.md) | 网页/手机遥控终端 | | [门控架构](docs/07-feature-gates.md) | 三层门控:编译开关 + USER_TYPE + GrowthBook | | [Hermes 自学习方案](docs/hermes-caludecode-复用方案.md) | 技能提炼 / 记忆增强 / Observer 用户建模路线图 |


更新日志

v1.5.3

  • 主题关键词提取:写入时从 tags + 英文单词 + 引号内容自动提取 5-8 个主题关键词(位置权重 × 频率权重 × 类别特异性 × Tags 加权),查询时精准区分"核心主题"和"附带提及",缓解 general 黑洞效应
  • 五层递进式检索管线:FTS5 MATCH → LIKE(含中文子串分解)→ 字符级交叉匹配 → 分类推断 → trust fallback,弱模型模糊查询语义命中率 75%
  • 查询双语扩展:种子术语表 + 事实库自动提取(括号注释/分隔符关联),中文查询自动追加英文术语,英文查询追加中文
  • Category 信号乘法强化:IDF 式加权 + 信号集中度归一化,查询信号集中时该 category 事实获得 ~1.5x 乘法提升
  • 新增 category_token_stats 表:增量维护 token 类别文档频率,支持关键词类别特异性计算
  • backfillKeywords() 启动时补算已有事实的关键词

v1.5.2

  • 三层递进式去重管线:层1实体+编辑距离 → 层2 Jaccard bigram(≥0.45) → 层3 Containment包含率(≥0.8),彻底解决多模型切换导致的中文事实重复问题
  • 去掉零实体短路:中文内容实体提取为空时不再跳过去重,回退到 bigram 分词相似度检测
  • 启动矛盾审计增强:除实体 JOIN 外新增 Jaccard 纯文本矛盾扫描(≤200条时执行),捕捉中文事实的隐性冲突
  • 删除废弃的 private findSimilar() 方法(逻辑已整合进 findSimilarFact 层2)

v1.5.1

  • 时间戳从 UTC 改为本地时区,修复 createdat/updatedat 显示错乱(datetime('now') → datetime('now', 'localtime'))
  • 修复 retrieval_count 始终为 0:检索追踪从死代码 MemoryStore.searchFacts() 迁移到实际搜索路径 FactRetriever.search(),top3 结果额外 +0.01 信任刷新
  • system prompt 添加 fact_feedback 使用指引,引导模型主动正向强化有效事实
  • 内容检测路由从只覆盖 general 扩展到 general/workflow/coding_style,防止项目知识混入全局库
  • 内容检测路由到项目库时 category 强制覆盖为 project(不再保留 AI 错标的 general/workflow)
  • isProjectContent 新增技术调试模式匹配(测试/截图/调试 + 路由/dispatch/搜索/agent 组件名)

v1.5.0

  • 全局记忆分类细化:从 4 种 category 扩展到 6 种(identity / codingstyle / toolpref / workflow / project / general)
  • 分层注入策略:identity/workflow 始终注入,coding_style 按项目技术栈匹配注入,其他走 prefetch
  • 语义去重大幅优化:实体优先(≥50% 重叠)+ 归一化编辑距离辅助,彻底解决阈值两难问题
  • 路由与分类解耦:category 标签由 AI 标注(允许偏差),存储位置由内容级检测确定性决定
  • 去重搜索跨 category 回退:同 category 搜不到时回退搜索全部分类,合并时保留旧分类标签
  • 需求变更自动检测:同实体下内容冲突时自动降权旧事实,新需求自动覆盖旧设计
  • Skill 记忆增强:skillify 生成技能时自动注入用户偏好和项目知识,智能推荐项目级/全局级存储位置
  • 实体提取修复:去掉 bigram 碎片入库,新增中文声明模式提取("我叫XXX"、"名字是XXX")
  • 孤立实体自动清理:update/remove 事实时自动清理无关联实体
  • system prompt 引导 AI 主动操作 fact_store("记住"时立即写入,update 时保留旧信息)
  • 旧数据自动迁移(user_pref/tool → 新 category)

v1.4.1

  • 修复自动记忆提取从未触发(绕过 tengupassportquail feature flag)
  • 放宽 extractMemories prompt:支持自动提取项目结构、技术栈、目录布局、构建配置
  • fact_store 工具 description 改为支持读写,引导 AI 主动存储项目知识

v1.4.0

  • 双层 SQLite 记忆架构:全局库(user_pref/tool/general)+ 项目库(project)
  • 去掉 memdir markdown 文件写入,统一为纯 SQLite 存储
  • 实体优先去重 + Upsert 机制,共享实体 + 编辑距离判断相似事实自动合并更新
  • 中文实体提取:bigram 关键词 + 引号/书名号匹配
  • FTS5 中文搜索增强:写入时 bigram 预分词 + 查询时 bigram 拆分
  • entity_type 自动分类(person/technology/topic)
  • extractMemories forked agent 只写 fact_store,不再写 markdown 文件
  • AutoDream 改为 SQLite consolidation(矛盾检测/去重/低信任清理)
  • prefetch 简化为纯 SQLite 同步检索(` 围栏注入 + 安全扫描(注入检测/PII/不可见Unicode)
  • 后台审查 Agent 自动提取事实(extractMemories 集成 fact_store)
  • 信任评分 + 反馈机制(fact_feedback 工具)

v1.2.0

  • 技能自动提炼(auto-skillify):Stop hook 检测 + scripts 目录支持
  • 移除 skillify 门控,/skillify 对所有用户可用

v1.1.0

  • Channel IM 集成(飞书/钉钉)
  • 自动记忆提取 + AutoDream 整合
  • 修复 Bun 1.3.12 @ 文件匹配和图片粘贴

v1.0.0

  • 多模型提供商支持(智谱GLM/豆包/DeepSeek)
  • Auto Mode 解除全部门控
  • /mem 轻量记忆系统
  • /multi-agent 多模型协作
  • 海洋深蓝 UI 主题

许可证

[MIT License](LICENSE) © 2025 ArtLjn


Ocean CLI — 让 AI 开发更高效,更顺畅

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.