Token导航 LogoToken导航TokenDH.com
agentihooks (The Cloud Clock Work) logo
AI代理未说明官方级别未说明来源级核验

agentihooks (The Cloud Clock Work)

MCP Server

AgentiHooks是一个用于管理Claude Code AI代理的生产工具,提供身份管理、安全护栏、上下文智能和实时广播通信功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
PythonClaudeAI代理Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

the-cloud-clockwork

提供方

the-cloud-clockwork

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

代理人书籍

![Standalone](https://the-cloud-clockwork.github.io/agentihooks/) ![License: MIT](https://github.com/The-Cloud-Clockwork/agentihooks/blob/main/LICENSE) ![CI](https://github.com/The-Cloud-Clockwork/agentihooks/actions/workflows/ci.yml) ![Python 3.11+](https://python.org) ![Docs](https://the-cloud-clockwork.github.io/agentihooks/)

生产线束 克劳德代码.将Claude Code转变为一个托管舰队——在每个活动会话中都有配置文件链、护栏、上下文智能和实时广播消息。

完整文档: 百叶窗钟表。ithub.io/gentihocks

______________________________________________________________________

四大支柱

graph LR
    A["Identity
Who your agents are"] --> E["AgentiHooks"]
    B["Guardrails
What keeps them safe"] --> E
    C["Context Intelligence
What keeps them sharp"] --> E
    D["Fleet Command
Talk to your entire fleet"] --> E

支柱1:身份-- *你的代理人是谁*

一个命令可以转换代理的整个个性、权限和工具集。

agentihooks init --profile coding,anton     # chain profiles
agentihooks settings-profile admin          # swap permissions without touching persona
  • 配置文件链接 --逗号分隔的配置文件从左向右合并(规则累积,设置深度合并,CLAUDE.md连接)
  • 双轴模型 --角色(rules/CLAUDE.md)和设置(权限/MCP)是独立的层
  • 捆绑系统 --配置文件的外部存储库,通过自动发现 agentihooks bundle link
  • 内置配置文件: default (自动模式), coding (接受编辑), admin (通过权限)
  • 实时规则刷新agentihooks refresh-rules 将规则更新推送到每个正在运行的Claude会话中,而无需重新启动。每次会话拍摄一次,会话快照,这样新会话就不会重复使用。

完整文档:身份

支柱2:护栏-- *是什么让他们安全*

默认情况下,9+护栏处于活动状态。你的舰队在你设定的范围内运作。

护栏它的作用
秘密——两层硬块写/编辑/Bash到包含秘密的文件;内联Bash args扫描+日志+注释(操作员管理的转录)
分行+PR警卫默认拒绝创建分支 gh pr create;通过操作员信号短语解锁每圈(分支)或每节(PR)
Prod锁定默认拒绝 gh pr merge main, release.yml, :latest/:prod/:stable 图像标签;通过发布/修补程序信号进行会话范围的解锁
控制切换(旁路模式)操作员短语 disable controls 翻转会话范围的旁路,立即解除分支/PR/发布合并/修补程序/非主力推送门;次级继承人继承;硬地板(推送到主界面、提交到主界面、文件中的秘密)保持强制执行;恢复由 enable controls 或 SessionEnd 。
重试断路器N=5时的软指令(发射错误研究人员代理)→ 重复相同故障时N=10的硬块
依赖性横幅在每个pip/npm/cargo/uv/poetry/apt/brew安装上可见横幅——供应链审计界面
版本保护阻止AI编辑清单中的版本字段
CLAUDE.md理智防止膨胀超过可配置的行限制
MCP表面积加载过多工具时发出警告
Bash输出过滤器截断详细输出以节省令牌
文件读取数据已删除阻止重复读取未更改的文件

完整文档:护栏

支柱3:情境智能-- *是什么让它们保持锋利*

随着对话的增加,LLM会失去对早期指示的关注。AgentiHooks战胜了注意力衰退。

  • 上下文刷新 --每20圈重新注入规则,每40圈重新注入CLAUDE.md
  • 优先事项 --关键规则在8000个字符的预算内首先加载
  • 令牌压缩 --4个级别(关闭/轻度/标准/攻击性),带安全防护口罩
  • 刀具记忆 --注入过去的错误,这样代理就不会重复错误
  • 大脑适配器 --通过广播通道将知识(热弧、操作内存)泵入代理的可插拔源
  • 上下文审计 --跟踪注入的资金和使用的预算
# In ~/.agentihooks/.env
CONTEXT_REFRESH_COMPRESSION=standard    # default
CONTEXT_COMPRESSION_SCOPE=all           # compress all injections

完整文档:上下文智能

支柱4:舰队司令部-- *与您的整个舰队交谈*

没有其他工具能做到这一点。 同时向每个活动的Claude Code会话发送消息,就像为您的AI员工提供PA系统一样。现在与 频道 对于有针对性的传递——向代理订阅主题,只有正确的会话才能听到正确的消息。
# Manual — full control
agentihooks broadcast "Deploy freeze until 3am" -s alert -t 8h
agentihooks broadcast "STOP ALL WRITES" -s critical -t 15m

# AI-assisted — describe intent in plain English
agentihooks broadcast emit "production incident, all agents stop deploying"
agentihooks broadcast emit "clear all broadcasts"
严重性交付默认TTL用例
info每节课一次4小时提醒,仅供参考
alert每转一次用户1小时部署冻结、降级的服务
critical每次转弯+每次工具调用30分钟事故,立即停止

emit 沙盒:克劳德·海库可以 agentihooks broadcast 命令——禁止使用所有其他工具。

完整文档:舰队司令部

______________________________________________________________________

快速开始

要求: 紫外线 必须安装。

git clone https://github.com/The-Cloud-Clockwork/agentihooks
cd agentihooks

# 1. Create the dedicated venv and install everything
uv venv ~/.agentihooks/.venv
uv pip install --python ~/.agentihooks/.venv/bin/python -e ".[all]"

# 2. Install hooks + settings + MCP into ~/.claude
agentihooks init

agentihooks init 电线钩住 ~/.claude/settings.json,符号链接技能/代理/命令/规则,将MCP服务器合并到 ~/.claude.json,并全局安装CLI。随时重新运行——它是幂等的。

与您的车队保持同步的CLI

agentihooks sessions 一目了然地显示每个正在运行的Claude Code会话--会话名称来自 /rename,精确的生命周期,并按索引重新打开以进行崩溃恢复。

建筑

Claude Code
  |
  |-- Hook Events (stdin JSON) --> python -m hooks --> hook_manager.py
  |     SessionStart, PreToolUse,       |
  |     PostToolUse, Stop, ...         |-- context refresh + compression
  |     (10 events total)              |-- guardrails pipeline
  |                                    |-- broadcast delivery
  |                                    |-- transcript logging
  |
  |-- statusLine (native setting) --> python -m hooks.statusline
  |     pipes JSON on every turn       --> 2-3 line status bar
  |
  +-- MCP Tools --> python -m hooks.mcp --> category modules
        aws, email, messaging,               --> hooks/integrations/*
        database, compute, ...

CLI参考

# Install / configure
agentihooks init                             # global install with default profile
agentihooks init --profile coding,anton       # chain profiles
agentihooks settings-profile admin           # quick-switch settings layer

# Fleet messaging
agentihooks broadcast "msg"                  # send info broadcast
agentihooks broadcast "msg" -s critical      # critical severity
agentihooks broadcast emit "natural lang"    # AI-assisted
agentihooks broadcast --list                 # active broadcasts
agentihooks broadcast --clear                # clear all

# Launch claude with --dangerously-skip-permissions
agentihooks claude                           # bypassPermissions + your extra args
agenti                                       # alias (after source ~/.bashrc)

# Bundle management
agentihooks bundle link ~/dev/my-tools       # link a bundle
agentihooks bundle pull                      # update linked bundle

# Link an external profile dir into the chain
agentihooks link-profile link ~/dev/brain-profile     # auto-appends to chain + re-installs
agentihooks link-profile link ~/dev/brain --name br   # disambiguate name on collision
agentihooks link-profile list                         # show all linked external profiles
agentihooks link-profile unlink brain-profile         # remove from chain + sweep symlinks

# Broadcast channels (targeted messaging — subscribe/unsubscribe being reworked)
agentihooks channel publish brain "msg"      # publish to a channel
agentihooks channel list                     # active channels + message counts

# Brain adapter (knowledge injection)
agentihooks brain status                     # source type, entries, refresh state
agentihooks brain refresh                    # force re-read + republish

# Live rule refresh (push rule updates into running sessions)
agentihooks refresh-rules --dry-run          # preview payload + target session IDs
agentihooks refresh-rules                    # one-shot push to all alive sessions
agentihooks refresh-rules --clear            # cancel a pending marker

# Session registry (crash recovery + session picker)
agentihooks sessions                         # list recent sessions with NAME + AGE columns
agentihooks sessions reopen             # reopen by index from the list
agentihooks sessions backfill                # seed registry from JSONL transcripts

# Diagnostics
agentihooks status                           # full system health
agentihooks lint-claude [path]               # CLAUDE.md token cost analysis
agentihooks mcp report                       # MCP surface area

# Memory mirror (cross-machine auto-memory sync — opt-in, role-based, by-project layout)
# Roles (v4): off / consumer / offline / contributor / authority.
# Set MEMORY_MIRROR_ROLE in ~/.agentihooks/.env. One authority per fleet.
agentihooks memory-sync install              # build gitfoam + seed main + init mirror + start daemon (skips gitfoam for consumer)
agentihooks memory-sync status               # role, mode, config, binary path, PID
agentihooks memory-sync sync-now             # one manual tick (snapshot + fetch main + merge)
agentihooks memory-sync propose [--auto-merge]  # PR from gitfoam//main → main
agentihooks memory-sync sweep-branches       # prune merged + idle branches (default 15d)
agentihooks memory-sync migrate-layout [--confirm]  # one-off: rewrite main to v3 by-project/ layout
agentihooks memory-sync start|stop           # gitfoam daemon lifecycle
agentihooks memory-sync uninstall [--purge]  # stop daemon (+ optional mirror rm)

# Utilities
agentihooks ignore [path]                    # create .claudeignore
agentihooks --list-profiles                  # available profiles
agentihooks --query                          # active profile name
agentihooks uninstall [--yes]                # remove everything

什么 init 是否

  1. 链接捆绑包(如果 --bundle 提供)
  2. 合并设置: settings.base.json ->配置文件覆盖->设置配置文件覆盖->OTEL配置
  3. Symlinks技能、代理、命令和规则(3层合并、跨链添加)
  4. CLAUDE.md~/.claude/CLAUDE.md
  5. 安装MCP服务器(挂钩实用程序+捆绑包+配置文件)
  6. 将层次结构感知的MCP黑名单应用于所有注册项目
  7. 修剪孤立的MCP服务器
  8. 通过以下方式全局安装CLI uv tool
  9. 写入bashrc块(agentienv 外壳功能+ agenti 别名)
每次回购初始化(--repo / --local)以及 .agentihooks.json 已删除 2026-05-07. agentihooks init 只是全球性的。

档案

配置文件反映了Claude Code项目结构:

profiles//
|-- CLAUDE.md                    # system prompt (-> ~/.claude/CLAUDE.md)
+-- .claude/
    |-- settings.overrides.json  # merged into ~/.claude/settings.json
    |-- .mcp.json                # profile MCP servers
    |-- skills/                  # -> ~/.claude/skills/
    |-- agents/                  # -> ~/.claude/agents/
    |-- commands/                # -> ~/.claude/commands/
    +-- rules/                   # -> ~/.claude/rules/

内置配置文件: default (自动), coding (接受编辑), admin (bypassPermissions)。捆绑配置文件会自动发现。

三层合并: 内置agentihooks->捆绑全局 .claude/ ->特定配置文件 .claude/。适用于技能、代理、命令、规则和MCP服务器。

配置文件链接: agentihooks init --profile coding,anton 按顺序应用每个配置文件——钩子追加,CLAUDE.md连接,规则/技能累加。

设置配置文件(双轴模型): 独立于角色控制设置:

agentihooks init --profile anton --settings-profile admin
agentihooks settings-profile admin           # quick-switch
agentihooks settings-profile --clear         # revert

Hook活动

10个生命周期事件,全部由 python -m hooks:

事件关键行为
SessionStart注册会话、注入上下文、大脑注入、发送广播、MCP警告
PreToolUse秘密扫描、分支/版本保护、重试中断、关键广播
PostToolUseBash输出过滤、文件去重、工具错误记录
UserPromptSubmit秘密扫描、大脑刷新、上下文刷新、频道过滤广播传输
Stop成绩单扫描、自动存储、成本指标
SessionEnd注销会话、清除缓存、日志摘要
SubagentStop子代理转录记录
Notification日志通知
PreCompact压实前记录
PermissionRequest记录权限请求

配置

中的所有配置 .env 文件在 ~/.agentihooks/.关键变量:

变量默认值描述
CONTEXT_REFRESH_COMPRESSIONstandard令牌压缩级别
CONTEXT_COMPRESSION_SCOPErefresh范围: refreshall
CONTEXT_REFRESH_INTERVAL20每N圈重新注入规则
BROADCAST_ENABLEDtrue车队信息主开关
BROADCAST_CRITICAL_ON_PRETOOLfalse在每个PreToolUse上重新注入关键广播(默认关闭——警报仍在UserPromptSubmit上)
BROADCAST_PRETOOL_MIN_SEVERITYcriticalPreToolUse重新注射的最低严重程度。 alert 扩大它
BROADCAST_MAX_BYTES_PRETOOL0PreTool使用横幅字节上限。 0 =无上限。设置>0以在Claude Code的10K挂钩输出限制下选择截断。
BROADCAST_MAX_BYTES_PROMPT0UserPromptSubmit横幅字节上限。语义相同。
CI_MANIFESTO_MAX_BYTES0CI声明注入字节上限。 0 =全舰通过。设置>0(例如。 7500)使用“在\
处读取完整文件”页脚截断。
TOKEN_CONTROL_ENABLEDtrue令牌控制层主交换机
BASH_FILTER_ENABLEDtrue截断冗长的bash输出
FILE_READ_CACHE_ENABLEDtrue阻止冗余文件重新读取
BRAIN_ENABLEDfalse脑适配器主开关
BRAIN_URL""远程大脑HTTP端点(kb路由器)。设置后,钩子会抓取 /feed, /signal,post /marker 而不是读取文件系统。
BRAIN_HTTP_TOKEN""持有者代币 BRAIN_URL.回落到 KB_ROUTER_TOKEN.
BRAIN_SOURCE_PATH~/.agentihooks/brain文件系统回退 BRAIN_URL 未设置。
BRAIN_CHANNELbrain大脑内容广播频道
BRAIN_REFRESH_INTERVAL30每N圈重新阅读一次大脑源代码
AMYGDALA_ENABLEDfalse主动信号注入(使用 BRAIN_URL /signal).
BRAIN_WRITER_ENABLEDfalse职位 /marker 停止/子代理停止。

完整表格: 配置参考

吊钩输出和10K盖

Claude Code注入钩子stdout(以及任何 hookSpecificOutput.additionalContext) 进入模型的上下文,直至形成文档 10000字符硬上限. 在盖子之外,安全带会默默地将身体写入一个临时文件 模型接收的是文件路径而不是内容。如果您的会话开始或 UserPromptSubmit注射累计10K以上 默默地迷失了.

AgentiHooks不强制执行默认上限——完整内容通过默认上限发送 代理拥有尽可能多的上下文。审核每个事件的实际内容 发射,是否有任何东西超过限制,运行:

agentihooks doctor --debug-hook

如果你堆叠了许多注射(CI宣言+大脑喂养+杏仁核+定制 叠加+工具记忆),使用 *_MAX_BYTES 上方的旋钮可盖住 最大的贡献者,并为其他人留出空间。

远程大脑快速启动

将Claude Code会话连接到您已经部署的大脑堆栈中 (例如通过 agentibrain-kernel的docker撰写或掌舵图表),放下 以下四行 ~/.agentihooks/.env:

BRAIN_URL=http://:

BRAIN_HTTP_TOKEN=
BRAIN_ENABLED=true
AMYGDALA_ENABLED=true
# optional — write back markers from this session
BRAIN_WRITER_ENABLED=true

重新启动Claude Code会话。钩子堆栈将获取热弧+ 在每个提示上显示活动信号,并将其作为广播横幅注入。不 配置文件安装是必需的——可以与任何配置文件(或无配置文件)一起使用。

内存镜像--跨机自动内存同步(PR门控)

Claude Code的自动记忆 ~/.claude/projects/ /memory/ 是机器本地的。 此功能镜像 只有 memory/ 子树 在你的每一台机器上 fleet通过私有GitHub仓库。成绩单、会话JSONL和 ctx_refresh 快照被经过单元测试的rsync过滤器排除在外。

运作原理

machine A                                         machine B
─────────                                         ─────────
~/.claude/projects/*/memory/                      ~/.claude/projects/*/memory/
      │ rsync (memory-only)                             ▲ merge (.conflict sibling on divergence)
      ▼                                                 │
~/.agentihooks/memory-mirror/                     ~/.agentihooks/memory-mirror/
      │ gitfoam force-push 500ms                        │ git fetch origin main every 60s
      ▼                                                 │
   origin/gitfoam/A/main                        origin/main  ←  merged by operator via PR
                    │                                   ▲
                    └── gh pr create --base main ───────┘
                        (agentihooks memory-sync propose)

每台机器仍在向其 拥有 gitfoam//main 分支通过 gitfoam (Rust守护进程,500ms 强制推送、内置秘密扫描)。 消费者阅读 origin/main 只有。 从机器部门晋升到 main 是PR-- agentihooks memory-sync propose 通过打开它 gh pr create 并且可选地在清理时自动合并。 这为您提供了一个针对不良或恶意记忆的审查门,而无需采取 剥夺了每个代理积累自己学习的能力。

标识键控布局(v3)。 镜像在以下位置存储内存 by-project//memory/ 哪里 ` 是仓库或代理名称,而不是绝对路径。一个身份 解析器反向行走 ~/.claude/projects// dir查找 包或代理边界(agent.yml > pyproject.toml/Cargo.toml/package.json/go.mod`

.git)并使用其基名作为密钥。所以:
  • 笔记本电脑 /home/iamroot/dev/tcc-ecosystem/agenticore → key agenticore
  • 舰队吊舱 /app/agenticore → key agenticore (相同的密钥,内存池!)
  • 代理 .../agentihub/agents/finops/package → key finops (跳过 package/)
  • 连字符转发类似 tcc-toolbelt 保持不变(解析器读取真实的FS,而不是编码名称)
  • 无法解决的路径又回到了 _unmapped// 所以没有什么损失。

启用(三个命令)

cat >> ~/.agentihooks/.env .conflict--` 旁边
目标——本地文件永远不会被覆盖。通过解决 `/memory`,
完成后删除冲突文件。

**模式**

- `off` (默认)--休眠
- `write` --完全参与者(推+拉主)
- `write-local-only` --气隙贡献器(仅推,从不拉)

**家政**

`agentihooks memory-sync sweep-branches` 删除已合并的远程分支
进入 `main` 闲置时间超过 `MEMORY_MIRROR_SWEEP_IDLE_DAYS` (默认值为15)。
未合并的分支永远不会被触碰。克朗安全。

**选择加入、选择退出、清除**

什么都不会发生,除非 `MEMORY_MIRROR_MODE != off` 和 `MEMORY_MIRROR_REMOTE`
已设置。回滚与 `agentihooks memory-sync uninstall --purge`.

完整指南: [docs/开始/memory-mirror.md](docs/getting-started/memory-mirror.md)

## 可移植性

用户特定的一切 `~/.agentihooks/`.要移动到新机器:

uv venv ~/.agentihooks/.venv uv pip install --python ~/.agentihooks/.venv/bin/python -e ".[all]" agentihooks init


## 相关项目

|项目|描述|
|---------|-------------|
| [代理](https://github.com/The-Cloud-Clockwork/agenticore) |Claude代码运行者和编排者|
| [代理权](https://github.com/The-Cloud-Clockwork/agentibridge) |用于会话持久化和远程控制的MCP服务器|

## 许可证

看 [许可证](LICENSE) 了解详情。

目录标签

目录标签

PythonClaudeAI代理AI代理管理本地部署安全护栏上下文智能实时通信ClaudeCode

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP