os-doctor

os-doctor is a command for Claude Code from CronusL-1141/AI-company. It costs 22 tokens per session (548 once invoked), scanned A, original, MIT.

A command that checks whether the AI Team OS project has the Python version, configuration files, services, database, hooks, and dashboard dependencies it needs.

In plain words
What is it for?
Use it to diagnose a project that will not start, verify its local services and files, or check whether its hooks and dashboard are set up correctly.
Why use it?
It helps locate setup and startup problems in one check instead of testing each part manually. It also reports failed or incomplete checks with suggested fixes.

Command for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: reads .claude/ paths.

Part of the ai-team-os plugin — 5 skills, 8 commands, 25 agents, 15 hooks, 1 MCP server shipped together

Good fit Use it to diagnose a project that will not start, verify its local services and files, or check whether its hooks and dashboard are set up correctly.

Compare 6 commands from other repositories ↓
Install with agentmods
npx agentmods add commands/cronusl-1141/ai-company/os-doctor
Install

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.

Clone the repo
git clone --depth 1 https://github.com/CronusL-1141/AI-company

Made for: Claude Code.

Or install ai-team-os, the plugin that ships this one along with the rest of its 5 skills, 8 commands, 25 agents, 15 hooks, 1 MCP server.

Wrote 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.

agentmods badge for os-doctor

README.md
[![agentmods](https://agentmods.dev/badge/commands/cronusl-1141/ai-company/os-doctor/github.svg)](https://agentmods.dev/commands/cronusl-1141/ai-company/os-doctor)
Your own site
<a href="https://agentmods.dev/commands/cronusl-1141/ai-company/os-doctor"><img src="https://agentmods.dev/badge/commands/cronusl-1141/ai-company/os-doctor/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.

agentmods 80×15 button for os-doctor

Your own site · 80×15
<a href="https://agentmods.dev/commands/cronusl-1141/ai-company/os-doctor"><img src="https://agentmods.dev/badge/commands/cronusl-1141/ai-company/os-doctor.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 22 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 548 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00022 $0.00548
Opus 5 $0.00011 $0.00274
Sonnet 5 $0.00004 $0.00110
Haiku 4.5 $0.00002 $0.00055

Measured 13d ago against content hash 7f49aa28f813, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

os-doctor 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 13d 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.

plugin/commands/os-doctor.md · 64 lines

What it actually says

/os-doctor — 系统诊断

你需要对 AI Team OS 进行全面的健康检查,帮助用户排查问题。

检查项目

按顺序执行以下检查,每项标记为通过/失败/警告:

1. Python 环境

  • 检查 Python 版本 >= 3.12
  • 检查 aiteam 包是否已安装: python -c "import aiteam; print(aiteam.__version__)"

2. 配置文件

  • 检查 aiteam.yaml 是否存在
  • 检查 .aiteam/ 目录是否存在

3. API 服务

4. 数据库

  • 检查 aiteam.db 文件是否存在(SQLite模式)
  • 或检查 PostgreSQL 连接(如果配置了)

5. Hooks 配置

  • 检查 .claude/settings.local.json 中是否配置了 hooks
  • 检查 hook 脚本文件是否存在

6. Dashboard

  • 检查 dashboard/ 目录是否存在
  • 检查 dashboard/node_modules/ 是否已安装依赖

输出格式

## AI Team OS 系统诊断

| 检查项 | 状态 | 详情 |
|--------|------|------|
| Python 环境 | PASS | Python 3.12.x |
| aiteam 包 | PASS | v0.3.0 |
| 配置文件 | PASS | aiteam.yaml 存在 |
| API 服务 | FAIL | http://localhost:8000 不可达 |
| 数据库 | PASS | aiteam.db (SQLite) |
| Hooks 配置 | WARN | 已注册 14/17 条 |
| Dashboard | PASS | 依赖已安装 |

### 建议
- API 服务未运行,请执行 `/os-up` 启动
- Hooks 注册面不完整,请执行 `python3 install.py --update` 重建

注意

  • 所有输出使用中文
  • 状态标记: PASS=通过, FAIL=失败, WARN=警告
  • 对每个失败项给出具体的修复建议
  • 使用 Bash 工具执行检查命令
Changes

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.

  1. 13d ago First seen · 64 lines · 22 tokens per session scan A 7f49aa28f813

Subscribe to this mod's changes

os-doctor is a command published in the GitHub repository CronusL-1141/AI-company (357 stars, last pushed yesterday), licensed MIT. It adds 22 tokens to every session and 548 once invoked, about $0.0001 per session on Opus 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-08-30.