Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Songhonglei/better-agent-skills --skill openviking-projectsgit clone --depth 1 https://github.com/Songhonglei/better-agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/songhonglei/better-agent-skills/openviking-projects)<a href="https://agentmods.dev/skills/songhonglei/better-agent-skills/openviking-projects"><img src="https://agentmods.dev/badge/skills/songhonglei/better-agent-skills/openviking-projects/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/songhonglei/better-agent-skills/openviking-projects"><img src="https://agentmods.dev/badge/skills/songhonglei/better-agent-skills/openviking-projects.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00073 | $0.01748 |
| Opus 5.5 | $0.00029 | $0.00699 |
| Sonnet 5.5 | $0.00015 | $0.00350 |
| Haiku 4.5 | $0.00007 | $0.00175 |
Grade A, and why
openviking-projects scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 55 lines — stays where its author put it; the contents beside it link to each section on GitHub.
OpenViking 项目知识管理
- Version: 1.0.2
- License: MIT
- Author: Evan Song · github.com/Songhonglei
- Repository: https://github.com/Songhonglei/better-agent-skills/tree/main/skills/openviking-projects
把项目的当前状态、来源地图和稳定契约整理成可追溯知识库,按需检索和回读。先保证来源准确和同步可验证,再评估准确率与 token 收益。本 Skill 自带从多个本地项目实践抽取的运行模块,采用多项目共用一个全局 openviking MCP 的架构,不需要在新电脑复制原机器配置、私有项目或聊天。
入口
- 新电脑:先读 onboarding.md。安装工具是
scripts/ovk.py,运行时资源在assets/runtime/;人工解压安装见 INSTALL.md;所有命令里的 Skill 路径按实际安装位置解析。 - GitHub/PyPI 不通、离线包或源码镜像:按需读 network-install.md。优先预编译 wheel;不默认安装编译工具链。
- 筛选或新增项目:读 project-policy.md,使用
assets/policy.example.json。 - 服务、MCP、登录启动和调度:读 operations.md。验收读 validation.md。典型项目的取舍与踩坑见 lessons.md。
- 参数、默认值、退出码与排错入口:查 cli.md。
依赖
脚本安装目标为 macOS/Linux,Python 3.11+;Windows 使用 WSL2 运行这些附加模块。底层 OpenViking 也有原生 Windows 发行,但本 Skill 的锁和调度没有声称支持原生 Windows。bootstrap 仅依赖 Python 标准库;运行环境安装固定 openviking==0.5.0、mcp>=1.27,<2、tiktoken>=0.9,<1。源码镜像和 worktree 识别需要 Git;普通资料同步不需要 Git,可用时额外记录仓库元数据。
执行约定
- 先辨认任务。 用户只要分析或预检时,只读和 dry-run。已授权安装/接入时,完成相应本地步骤;用户指定已有服务、目录、模型和网络来源时沿用。调度、自启动、额外上传或共享服务开放范围遵守本次授权。
- 发现已有环境。 先看安装状态和项目说明;若已存在可用服务/注册表,复用其管理入口,避免重装或抢占 1933。默认新电脑数据目录是
~/.openviking-projects,可通过--home或OVK_HOME改为专用目录;不覆盖~/.openviking、旧试点或其他工具配置。 - 集中补齐必要信息。 确认项目根目录、模型 provider/api_base、摘要模型、embedding 模型和维度、凭据来源。可读用户指定的已有本地配置;不要扫描整个主目录找密钥。密钥让用户写本机文件或使用现有环境变量,不贴聊天、不输出、不打包。聊天模型可用不代表 embedding 已绑定。只有 Codex 登录不能推定有可用 embedding 服务。
- 安装与模型验收。 先输出安装计划;在已授权范围内安装。使用
doctor --probe-models分别验证两个模型及 embedding 维度,再启动服务,确认/ready。配置仅绑定 loopback;需要远程共享时另做网络、TLS 和身份方案,不顺手开放端口。 - 项目资料先治理。 确认当前入口/状态、源码来源和历史边界。资料散乱时先加导航与状态页,不要求为了接入统一全部源码。选择通常 6–20 份文档或选区,显式白名单,不遍历整个项目入库。数据、录制、oracle、答案、凭据、依赖、构建/备份和聊天留在索引范围外。
- 接入与验证。
project add --dry-run→ 注册 →project sync --dry-run→ 首次同步 → 真实 MCP 验收。全局只注册一次名为openviking的 MCP;后续项目只登记 code、工作区和白名单,无须各建 MCP。默认独立账号;同一开发者可明确选择 shared,但要说明共享账号只由 MCP 路由限制范围,不能声称原生账号隔离。统一 MCP 每次携带project_code和绝对workspace_path,禁止进程级“当前项目”开关。 - 通过后再启用日常任务。 注册不自动定时同步。验收完成后按用户要求启用,推荐工作日北京时间 12:30。任务运行中等待同一进程;complete/unchanged 才成功,already_running 跳过。未知提交查 journal 和任务 ID,不重复提交;失败不绕过校验或扩大五份变更上限。
What ships with it
29 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- .gitignore 64 B
- agents/openai.yaml 296 B
- assets/policy.example.json 590 B
- assets/runtime/import_sources.py 11 KB runs code
- assets/runtime/manage.py 26 KB runs code
- assets/runtime/pilot_state.py 4.8 KB runs code
- assets/runtime/prepare_sources.py 11 KB runs code
- assets/runtime/probe_models.py 3.1 KB runs code
- assets/runtime/project_profile.py 515 B runs code
- assets/runtime/project_registry.py 3.5 KB runs code
- assets/runtime/provider_runtime.py 1.4 KB runs code
- assets/runtime/readonly_mcp.py 16 KB runs code
- assets/runtime/router_worker.py 944 B runs code
- assets/runtime/source_selection.py 8.9 KB runs code
- assets/runtime/unified_mcp.py 5.0 KB runs code
- assets/runtime/verify_mcp.py 6.3 KB runs code
- CHANGELOG.md 760 B
- INSTALL.md 1.8 KB
- LICENSE 1.0 KB
- README.md 4.2 KB
- references/cli.md 5.0 KB
- references/lessons.md 3.2 KB
- references/network-install.md 4.3 KB
- references/onboarding.md 5.1 KB
- references/operations.md 4.9 KB
- references/project-policy.md 4.9 KB
- references/validation.md 3.5 KB
- scripts/ovk.py 16 KB runs code
- scripts/selftest.py 26 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 55 lines · 73 tokens per session scan A 7ea598888bfe
openviking-projects is a skill published in the GitHub repository Songhonglei/better-agent-skills (3 stars, last pushed 6d ago), licensed MIT. It adds 73 tokens to every session and 1,748 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-21.
Other skills, from other repositories
knowledge-org
A guide to organising large bodies of knowledge so an AI system can navigate relationships, summaries, and layers instead of searching only flat text chunks. It covers tree indexes, knowledge graphs, file-like structures, incremental updates, and long-term memory layouts.
memory-system
A guide to giving an AI agent persistent, user-specific memory across conversations. It covers what to remember, how to store it, how to update or compress it, and when to use memory instead of a shared knowledge base.
memanto-companion
Inspect and manage the cross-session engineering memory that Memanto maintains for your Claude Code skills. Use when the user asks what Memanto remembers, wants to see their engineering profile, manually recall context for a skill, or store a decision. The automatic lifecycle hooks handle capture/injection on their…
openlore
Query and publish to an OpenLore knowledge repository over SSH using ordinary shell commands. Use when a task needs project documentation, runbooks, shared team knowledge, or a place to publish findings.
Context Doctor
Investigate and repair an agent's context — memory, system prompt, and skills — using observed behavior as evidence. Use when the user asks to audit, clean up, or fix your memory or context, or runs /doctor. Do not load for routine memory reads or edits, or requests that merely mention memory.
memory-import
Bulk-import an external knowledge base into Prismer memory via the three-layer import pipeline (07 §3.1). Use when the user asks to import/migrate documents, a knowledge base, or notes into workspace memory. Layer 1 lands raw documents (zero LLM, instantly searchable); Layer 2 is YOUR distillation work — you read the…