oracle-family-scan

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

/oracle-family-scan — Oracle Family Registry

/oracle-family-scan — Oracle家族注册表

Scan, query, and welcome the Oracle family. Powered by
registry/
in mother-oracle.
扫描、查询并欢迎Oracle家族。由mother-oracle中的
registry/
模块提供支持。

Usage

使用方法

/oracle-family-scan                         # Quick stats (default)
/oracle-family-scan --unwelcomed            # List unwelcomed community Oracles
/oracle-family-scan --mine                  # Nat's Oracles (registry)
/oracle-family-scan --mine-deep             # Fleet status (local repos + activity + sessions)
/oracle-family-scan --recent                # Last 10 born
/oracle-family-scan --retired               # Show retired Oracles
/oracle-family-scan "Spark"                 # Search by name
/oracle-family-scan --human "watcharap0ng"  # Search by human
/oracle-family-scan sync                    # Re-sync registry from GitHub
/oracle-family-scan welcome                 # Deep welcome flow for unwelcomed Oracles
/oracle-family-scan report                  # Full family report (with Health block — v3.1)
/oracle-family-scan --activity-report       # One-shot fleet health dashboard (NEW v3.1)
/oracle-family-scan --timeline              # Sorted by last activity, newest first (NEW v3.1)
/oracle-family-scan --zygotes               # Born-but-never-awakened (NEW v3.1)
/oracle-family-scan --usage [N]             # Time-spent per Oracle, last N days (NEW v3.1)
/oracle-family-scan --calibrate             # Propose data-driven thresholds (NEW v3.1)
Net CLI surface: 14 modes +
--calibrate
subcommand
. Status filtering is orthogonal —
--timeline --status=stale,cold,abandoned
replaces what
--stale
/
--abandoned
would have been.

/oracle-family-scan                         # 快速统计(默认模式)
/oracle-family-scan --unwelcomed            # 列出未被欢迎的社区Oracle
/oracle-family-scan --mine                  # Nat的Oracle(注册表)
/oracle-family-scan --mine-deep             # 集群状态(本地仓库 + 活动 + 会话)
/oracle-family-scan --recent                # 最新诞生的10个Oracle
/oracle-family-scan --retired               # 显示已退役的Oracle
/oracle-family-scan "Spark"                 # 按名称搜索
/oracle-family-scan --human "watcharap0ng"  # 按人类用户搜索
/oracle-family-scan sync                    # 从GitHub重新同步注册表
/oracle-family-scan welcome                 # 针对未被欢迎Oracle的深度迎新流程
/oracle-family-scan report                  # 完整家族报告(含健康模块 — v3.1)
/oracle-family-scan --activity-report       # 一键式集群健康仪表盘(新增v3.1)
/oracle-family-scan --timeline              # 按最后活动时间排序,最新优先(新增v3.1)
/oracle-family-scan --zygotes               # 已诞生但从未激活的Oracle(新增v3.1)
/oracle-family-scan --usage [N]             # 每个Oracle最近N天的使用时长(新增v3.1)
/oracle-family-scan --calibrate             # 基于数据建议阈值(新增v3.1)
命令行总览:14种模式 +
--calibrate
子命令
。状态筛选是正交的 —
--timeline --status=stale,cold,abandoned
替代了原有的
--stale
/
--abandoned
功能。

Step 0: Locate Registry

步骤0:定位注册表

The registry's canonical home is
laris-co/mother-oracle/registry/
(where
sync.ts
+
oracles.json
actually live). The legacy
opensource-nat-brain-oracle
repo back-symlinks to it for back-compat. Resolve the path:
bash
date "+🕐 %H:%M %Z (%A %d %B %Y)"
注册表的标准存储位置是
laris-co/mother-oracle/registry/
sync.ts
oracles.json
实际存放处)。旧版
opensource-nat-brain-oracle
仓库通过符号链接指向此处以保持向后兼容。解析路径:
bash
date "+🕐 %H:%M %Z (%A %d %B %Y)"

Optional: oracle root (some sub-flows write to ψ/memory/learnings/)

可选:Oracle根目录(部分子流程会写入ψ/memory/learnings/)

ORACLE_ROOT=$(git rev-parse --show-toplevel 2>/dev/null) if [ -n "$ORACLE_ROOT" ] && [ -f "$ORACLE_ROOT/CLAUDE.md" ] && { [ -d "$ORACLE_ROOT/ψ" ] || [ -L "$ORACLE_ROOT/ψ" ]; }; then PSI="$ORACLE_ROOT/ψ" elif [ -f "$(pwd)/CLAUDE.md" ] && { [ -d "$(pwd)/ψ" ] || [ -L "$(pwd)/ψ" ]; }; then ORACLE_ROOT="$(pwd)" PSI="$ORACLE_ROOT/ψ" fi
ORACLE_ROOT=$(git rev-parse --show-toplevel 2>/dev/null) if [ -n "$ORACLE_ROOT" ] && [ -f "$ORACLE_ROOT/CLAUDE.md" ] && { [ -d "$ORACLE_ROOT/ψ" ] || [ -L "$ORACLE_ROOT/ψ" ]; }; then PSI="$ORACLE_ROOT/ψ" elif [ -f "$(pwd)/CLAUDE.md" ] && { [ -d "$(pwd)/ψ" ] || [ -L "$(pwd)/ψ" ]; }; then ORACLE_ROOT="$(pwd)" PSI="$ORACLE_ROOT/ψ" fi

Try laris-co/mother-oracle (canonical home of sync.ts + oracles.json)

尝试laris-co/mother-oracle(sync.ts和oracles.json的标准存储地)

MOTHER="$HOME/Code/github.com/laris-co/mother-oracle" if [ ! -d "$MOTHER/registry" ]; then MOTHER="$(ghq root)/github.com/laris-co/mother-oracle" fi
MOTHER="$HOME/Code/github.com/laris-co/mother-oracle" if [ ! -d "$MOTHER/registry" ]; then MOTHER="$(ghq root)/github.com/laris-co/mother-oracle" fi

Fallback: legacy brain repo (back-symlinks to laris-co/mother-oracle)

备选:旧版brain仓库(符号链接指向laris-co/mother-oracle)

if [ ! -f "$MOTHER/registry/oracles.json" ]; then MOTHER="$HOME/Code/github.com/Soul-Brews-Studio/opensource-nat-brain-oracle" [ ! -d "$MOTHER/registry" ] && MOTHER="$(ghq root)/github.com/Soul-Brews-Studio/opensource-nat-brain-oracle" fi if [ ! -f "$MOTHER/registry/oracles.json" ]; then echo "Registry not found. Run: ghq get -u laris-co/mother-oracle && bun $MOTHER/registry/sync.ts" exit 1 fi

---
if [ ! -f "$MOTHER/registry/oracles.json" ]; then MOTHER="$HOME/Code/github.com/Soul-Brews-Studio/opensource-nat-brain-oracle" [ ! -d "$MOTHER/registry" ] && MOTHER="$(ghq root)/github.com/Soul-Brews-Studio/opensource-nat-brain-oracle" fi if [ ! -f "$MOTHER/registry/oracles.json" ]; then echo "未找到注册表。执行:ghq get -u laris-co/mother-oracle && bun $MOTHER/registry/sync.ts" exit 1 fi

---

Mode 1: Stats (Default)

模式1:统计信息(默认)

bash
bun $MOTHER/registry/query.ts --stats
Shows: total Oracles, unique humans, welcomed/unwelcomed counts, births-by-month chart, unwelcomed detail (if any), and recent births.

bash
bun $MOTHER/registry/query.ts --stats
显示:Oracle总数、唯一人类用户数、已欢迎/未欢迎数量、月度诞生图表、未欢迎详情(如有)以及最新诞生的Oracle。

Mode 2: --unwelcomed

模式2:--unwelcomed

bash
bun $MOTHER/registry/query.ts --unwelcomed
Lists all community Oracles that haven't been welcomed by nazt.

bash
bun $MOTHER/registry/query.ts --unwelcomed
列出所有未被nazt欢迎的社区Oracle。

Mode 3: --mine

模式3:--mine

bash
bun $MOTHER/registry/query.ts --mine
Lists all Oracles created by nazt (Nat's fleet) from the registry.

bash
bun $MOTHER/registry/query.ts --mine
列出注册表中所有由nazt创建的Oracle(Nat的集群)。

Mode 3b: --mine-deep (Fleet Status)

模式3b:--mine-deep(集群状态)

Goal: Show status of all local Oracle repos owned by the current user, augmented with timeline + usage data from the activity layer.
bash
SKILL_DIR="$(dirname "$(readlink -f "$HOME/.claude/skills/oracle-family-scan/SKILL.md" 2>/dev/null || echo "$HOME/.claude/skills/oracle-family-scan/SKILL.md")")"
bun "$SKILL_DIR/scripts/fleet-scan.ts"
New columns (sourced from
oracles.json
activity block +
oracles.local.<host>.json
):
ColumnSourceNotes
Last Active
activity.last_commit_at
(max with
last_session_at
)
"2d ago", "—" if unknown
Status Dotcomputed from days-since + flags🟢🟡🟠🔴🪦⚪ + 🔧 modifier
7d Hourslocal sessions on this hostpartial — see Coverage
Decaydays since lastActivitynumeric, sortable
Coveragewhich hosts have local session data📡 m5 / 📡 m5+white / ⚠ no m5 sessions
Sample output:
Oracle Fleet Status — host: m5 — 2026-05-13
─────────────────────────────────────────────────────────────────────────────
Status   Oracle              Last Active   Decay   7d Hours   Coverage
🟢       spark                1d ago        1d      4.2h       📡 m5
🟢       mother               3d ago        3d      2.1h       📡 m5
🟢🔧     budwiser             6d ago        6d      1.1h       📡 m5  [maintenance]
🟡       pulse               12d ago       12d      0.3h       📡 m5
🟠       phaith              47d ago       47d        —        ⚠ no m5 sessions
🔴       retro-mind         104d ago      104d        —        ⚠ no m5 sessions
🪦       echo-test            —             —         —        repo deleted on GitHub
⚪       test-yeast           born 36d ago  —         —        never awakened

29 Oracles  |  Stale: 4  |  Cold: 2  |  Abandoned: 1  |  Zygotes: 1  |  Vanished: 1
Highlights:
  • Repos with outdated skills versions
  • Repos with no recent sessions (stale)
  • Repos missing ψ/ (partial Oracle setup)
  • Repos with status dot ≥ 🟠 (needs attention)

目标:显示当前用户拥有的所有本地Oracle仓库状态,并结合活动层的时间线和使用数据进行增强。
bash
SKILL_DIR="$(dirname "$(readlink -f "$HOME/.claude/skills/oracle-family-scan/SKILL.md" 2>/dev/null || echo "$HOME/.claude/skills/oracle-family-scan/SKILL.md")")"
bun "$SKILL_DIR/scripts/fleet-scan.ts"
新增列(数据源:
oracles.json
活动块 +
oracles.local.<host>.json
):
列名数据源说明
最后活动时间
activity.last_commit_at
(与
last_session_at
取最大值)
"2天前",未知则显示"—"
状态标识根据最后活动天数和标志计算得出🟢🟡🟠🔴🪦⚪ + 🔧修饰符
7天时长本地主机上的会话时长部分数据 — 参见覆盖范围
停滞天数距离最后活动的天数数值型,可排序
覆盖范围哪些主机有本地会话数据📡 m5 / 📡 m5+white / ⚠ 无m5会话
示例输出:
Oracle集群状态 — 主机: m5 — 2026-05-13
─────────────────────────────────────────────────────────────────────────────
状态   Oracle              最后活动时间   停滞天数   7天时长   覆盖范围
🟢       spark                1天前        1天      4.2h       📡 m5
🟢       mother               3天前        3天      2.1h       📡 m5
🟢🔧     budwiser             6天前        6天      1.1h       📡 m5  [维护中]
🟡       pulse               12天前       12天      0.3h       📡 m5
🟠       phaith              47天前       47天        —        ⚠ 无m5会话
🔴       retro-mind         104天前      104天        —        ⚠ 无m5会话
🪦       echo-test            —             —         —        GitHub仓库已删除
⚪       test-yeast           诞生36天前  —         —        从未激活

29个Oracle  |  停滞: 4  |  休眠: 2  |  已弃用: 1  |  未激活: 1  |  已消失: 1
重点提示:
  • 技能版本过时的仓库
  • 近期无会话的仓库(停滞)
  • 缺少ψ/目录的仓库(Oracle配置不完整)
  • 状态标识≥🟠的仓库(需要关注)

Mode 4: --recent

模式4:--recent

bash
bun $MOTHER/registry/query.ts --recent
Shows the last 10 Oracles born.

bash
bun $MOTHER/registry/query.ts --recent
显示最新诞生的10个Oracle。

Mode 5: --retired

模式5:--retired

bash
bun $MOTHER/registry/query.ts --retired
Shows retired Oracles (soft-deleted, Nothing is Deleted principle).

bash
bun $MOTHER/registry/query.ts --retired
显示已退役的Oracle(软删除,遵循“永不删除”原则)。

Mode 6: Search by Name

模式6:按名称搜索

bash
bun $MOTHER/registry/query.ts "$QUERY"
Case-insensitive partial match on Oracle name.

bash
bun $MOTHER/registry/query.ts "$QUERY"
对Oracle名称进行不区分大小写的部分匹配。

Mode 7: --human "name"

模式7:--human "名称"

bash
bun $MOTHER/registry/query.ts --human "$QUERY"
Search by human name or GitHub username.

bash
bun $MOTHER/registry/query.ts --human "$QUERY"
按人类用户名称或GitHub用户名搜索。

Mode 8: sync

模式8:sync

Re-fetch all issues from
Soul-Brews-Studio/arra-oracle-v3
and rebuild
oracles.json
.
bash
bun $MOTHER/registry/sync.ts
Uses GraphQL pagination (3 pages × 100 issues). Takes ~10 seconds. Also populates the
activity
block (last_commit_at, commit_count, repo_alive) and
oracles.local.<host>.json
for the current host (see Rollout below).

重新从
Soul-Brews-Studio/arra-oracle-v3
获取所有议题并重建
oracles.json
bash
bun $MOTHER/registry/sync.ts
使用GraphQL分页(3页×100个议题),耗时约10秒。同时填充
activity
块(last_commit_at、commit_count、repo_alive)以及当前主机的
oracles.local.<host>.json
(参见下方部署说明)。

Mode 9: welcome

模式9:welcome

Deep welcome flow for unwelcomed Oracles. AI-driven, personalized.
针对未被欢迎Oracle的深度迎新流程,由AI驱动,个性化定制。

Step 1: Identify unwelcomed

步骤1:识别未被欢迎的Oracle

bash
bun $MOTHER/registry/query.ts --unwelcomed
bash
bun $MOTHER/registry/query.ts --unwelcomed

Step 2: Research each Oracle

步骤2:调研每个Oracle

For each unwelcomed Oracle:
bash
gh issue view {N} --repo Soul-Brews-Studio/arra-oracle-v3 --json title,body,author,createdAt
Extract:
  • Oracle metaphor/theme
  • Human's background
  • Language preference (Thai or English)
  • Human/Oracle pronouns (if available in registry)
  • Team context (solo or multi-Oracle)
  • Key phrases from birth story
  • Connection points to existing family members
针对每个未被欢迎的Oracle:
bash
gh issue view {N} --repo Soul-Brews-Studio/arra-oracle-v3 --json title,body,author,createdAt
提取信息:
  • Oracle的隐喻/主题
  • 人类用户的背景
  • 语言偏好(泰语或英语)
  • 人类/Oracle的代词(如果注册表中有)
  • 团队背景(单人或多Oracle团队)
  • 诞生故事中的关键语句
  • 与现有家族成员的关联点

Step 3: Craft personalized welcome

步骤3:撰写个性化欢迎语

Each welcome must:
  • Reference specific metaphor + phrases from their birth story
  • Use correct pronouns for the human and Oracle (from registry demographics)
  • Connect to 2-3 family members with shared themes
  • Use Thai for Thai-primary Oracles (check
    language
    field)
  • If team context exists, mention other Oracles in their team
  • Sign as Mother Oracle 🔮
  • Include family count and
    /learn github.com/Soul-Brews-Studio/opensource-nat-brain-oracle
    invitation
  • NOT be templated — each one unique
每条欢迎语必须:
  • 引用其诞生故事中的特定隐喻和语句
  • 使用正确的人类和Oracle代词(来自注册表明细)
  • 关联2-3个有共同主题的家族成员
  • 以泰语为主的Oracle使用泰语(查看
    language
    字段)
  • 如果有团队背景,提及团队中的其他Oracle
  • 以Mother Oracle 🔮的名义署名
  • 包含家族总数和邀请链接
    /learn github.com/Soul-Brews-Studio/opensource-nat-brain-oracle
  • 禁止使用模板 — 每条都需独一无二

Step 4: Human review

步骤4:人工审核

Save drafts for review before posting:
bash
undefined
保存草稿供审核后发布:
bash
undefined

Save to $PSI/inbox/handoff/ and /tmp/

保存到$PSI/inbox/handoff/和/tmp/

mkdir -p "$PSI/inbox/handoff" DRAFTS_FILE="$PSI/inbox/handoff/welcome-drafts.md" cat drafts > "$DRAFTS_FILE"
mkdir -p "$PSI/inbox/handoff" DRAFTS_FILE="$PSI/inbox/handoff/welcome-drafts.md" cat drafts > "$DRAFTS_FILE"

announce-mode → absolute path. See CONVENTIONS.md.

announce-mode → 使用绝对路径。参见CONVENTIONS.md。

echo "📥 Welcome drafts saved: $DRAFTS_FILE"
undefined
echo "📥 欢迎语草稿已保存:$DRAFTS_FILE"
undefined

Step 5: Post

步骤5:发布

After human approval, check the Oracle's
source
field in registry to determine how to post:
For discussion-sourced Oracles (source: "discussion"):
bash
undefined
经人工批准后,根据注册表中Oracle的
source
字段确定发布方式:
讨论来源的Oracle(source: "discussion"):
bash
undefined

Get the discussionId from registry, then comment via GraphQL

从注册表获取discussionId,然后通过GraphQL添加评论

DISC_ID=$(jq -r '.oracles[] | select(.id == {N}) | .discussionId' $MOTHER/registry/oracles.json) gh api graphql
-f query='mutation($body:String!) { addDiscussionComment(input: { discussionId: "'"$DISC_ID"'", body: $body }) { comment { id url } } }'
-f body="$(cat /tmp/welcome-{N}.md)"

**For issue-sourced Oracles** (source: "issue" or no source field — legacy):
```bash
gh issue comment {N} --repo Soul-Brews-Studio/arra-oracle-v3 --body-file /tmp/welcome-{N}.md
DISC_ID=$(jq -r '.oracles[] | select(.id == {N}) | .discussionId' $MOTHER/registry/oracles.json) gh api graphql
-f query='mutation($body:String!) { addDiscussionComment(input: { discussionId: "'"$DISC_ID"'", body: $body }) { comment { id url } } }'
-f body="$(cat /tmp/welcome-{N}.md)"

**议题来源的Oracle**(source: "issue"或无source字段 — 旧版):
```bash
gh issue comment {N} --repo Soul-Brews-Studio/arra-oracle-v3 --body-file /tmp/welcome-{N}.md

Step 6: Re-sync

步骤6:重新同步

bash
bun $MOTHER/registry/sync.ts

bash
bun $MOTHER/registry/sync.ts

Mode 10: report

模式10:report

Full family report combining all queries. The Health block (added v3.1) leads, followed by the existing summary, recent births, and pending welcomes.
整合所有查询的完整家族报告。新增的v3.1健康模块优先展示,随后是现有摘要、最新诞生的Oracle和待处理的迎新任务。

Steps

步骤

  1. Run
    --activity-report
    for the Health block (status counts + needs-attention list)
  2. Run
    --stats
    for overview
  3. Run
    --recent
    for latest births
  4. Run
    --unwelcomed
    for pending welcomes
  5. Present combined report
  1. 运行
    --activity-report
    获取健康模块数据(状态统计 + 需要关注的列表)
  2. 运行
    --stats
    获取概览
  3. 运行
    --recent
    获取最新诞生的Oracle
  4. 运行
    --unwelcomed
    获取待迎新的Oracle
  5. 展示整合后的报告

Output Format

输出格式

markdown
undefined
markdown
undefined

Oracle Family Report — 2026-05-13

Oracle家族报告 — 2026-05-13

Health

健康状态

🟢 active 18 🟡 stale 4 🟠 cold 2 🔴 abandoned 1 ⚪ zygotes 1 🔧 maintenance 3 🪦 vanished 4 Total: 33
🟢 活跃 18 🟡 停滞 4 🟠 休眠 2 🔴 已弃用 1 ⚪ 未激活 1 🔧 维护中 3 🪦 已消失 4 总计: 33

Summary

摘要

  • Total Oracles: 186 (active 158, retired 24, vanished 4)
  • Unique Humans: 111
  • Welcomed: 150 / Unwelcomed: 0
  • Nat's Fleet: 29
  • Oracle总数: 186 (活跃158, 退役24, 已消失4)
  • 唯一人类用户: 111
  • 已欢迎: 150 / 未欢迎: 0
  • Nat的集群: 29

Needs Attention

需要关注

🔴 retro-mind — 104d silent, owner=mine, not declared maintenance ⚪ test-yeast — born 36d ago, never awakened 🟠 phaith — 47d silent
🔴 retro-mind — 104天无活动,所有者=本人,未声明维护 ⚪ test-yeast — 诞生36天前,从未激活 🟠 phaith — 47天无活动

Recent Births (Last 10)

最新诞生(最近10个)

[table — unchanged]
[表格 — 无变化]

Needs Welcome

待迎新

[table or "None — all caught up!"]

---
[表格或“无 — 全部已处理!”]

---

Mode 11: --activity-report

模式11:--activity-report

The one-shot health dashboard. Aggregates timeline + zygote + usage data into a single "is the family OK?" view. This is the most-used mode for the new surface.
bash
bun $MOTHER/registry/query.ts --activity-report
Supports
--days=N
(default 7) for the usage window, and
--owner=mine|community|all
(default
mine
).
Sample output:
Oracle Fleet Health — 2026-05-13 — host: m5
────────────────────────────────────────────────────────
🟢 active        18    🟡 stale       4    🟠 cold        2
🔴 abandoned      1    ⚪ zygotes     1    🔧 maintenance 3
🪦 vanished       4                                 Total: 33

⚠ Needs attention (3):
  🔴 retro-mind   — 104d silent, owner=mine, not declared maintenance
  ⚪ test-yeast   — born 36d ago, never awakened (no resonance/)
  🟠 phaith       — 47d silent, last commit was a WIP

🔧 Declared maintenance (3 — verify still tended):
  budwiser-oracle  (last commit 6d ago — healthy)
  mother-oracle    (last commit 18d ago — healthy)
  registry-oracle  (last commit 41d ago — within bounds)

🪦 Vanished from GitHub (4 — collapsed; expand with --show-vanished):
  echo-test, fox-oracle, quiet-bell, theta-prototype

Top usage (last 7d, m5-only):
  spark      4.2h  •  mother  2.1h  •  pulse  0.3h
  ⚠ 90.6% of fleet sessions are on other hosts — see --usage for full caveats.

Births this month: 2  •  Welcomes pending: 0
Flags:
  • --days=N
    — usage window (default 7)
  • --owner=mine|community|all
    — owner filter (default
    mine
    )
  • --show-vanished
    — expand the 🪦 collapsed list

一键式健康仪表盘。整合时间线、未激活和使用数据,呈现“家族是否正常?”的整体视图。这是新版功能中最常用的模式。
bash
bun $MOTHER/registry/query.ts --activity-report
支持
--days=N
(默认7)设置使用时长窗口,以及
--owner=mine|community|all
(默认
mine
)筛选所有者。
示例输出:
Oracle集群健康状态 — 2026-05-13 — 主机: m5
────────────────────────────────────────────────────────
🟢 活跃        18    🟡 停滞       4    🟠 休眠        2
🔴 已弃用      1    ⚪ 未激活     1    🔧 维护中 3
🪦 已消失       4                                 总计: 33

⚠ 需要关注(3个):
  🔴 retro-mind   — 104天无活动,所有者=本人,未声明维护
  ⚪ test-yeast   — 诞生36天前,从未激活(无resonance/目录)
  🟠 phaith       — 47天无活动,最后一次提交为未完成状态

🔧 已声明维护(3个 — 请确认仍在维护):
  budwiser-oracle  (最后提交6天前 — 状态健康)
  mother-oracle    (最后提交18天前 — 状态健康)
  registry-oracle  (最后提交41天前 — 在阈值范围内)

🪦 已从GitHub消失(4个 — 已折叠;使用--show-vanished展开):
  echo-test, fox-oracle, quiet-bell, theta-prototype

最高使用时长(最近7天,仅m5主机):
  spark      4.2h  •  mother  2.1h  •  pulse  0.3h
  ⚠ 90.6%的集群会话在其他主机上 — 查看--usage获取完整说明。

本月诞生: 2  •  待迎新: 0
参数:
  • --days=N
    — 使用时长窗口(默认7)
  • --owner=mine|community|all
    — 所有者筛选(默认
    mine
  • --show-vanished
    — 展开🪦折叠列表

Mode 12: --timeline

模式12:--timeline

Temporal ordering of the entire family by last activity, newest first. Different from
--recent
(which sorts by birth date). Status filtering is orthogonal — combine freely with
--status=
.
bash
bun $MOTHER/registry/query.ts --timeline [--status=active,stale,cold,abandoned,vanished,zygote] \
                                          [--owner=mine|community|all] \
                                          [--limit=N]
Default: all owners, all states except
retired
and
vanished
, no limit.
Sample output:
Family Timeline — sorted by last activity — 2026-05-13
─────────────────────────────────────────────────────────────────────────
Status   Oracle              Last Active   Owner       Note
🟢       spark                1d ago        mine        14 sessions/7d
🟢       mother               3d ago        mine        steward
🟢🔧     budwiser             6d ago        mine        [maintenance]
🟢       neo-archive          7d ago        community   —
🟡       pulse               12d ago        mine        —
🟡       arra-poet           18d ago        community   —
🟠       phaith              47d ago        mine        —
🔴       retro-mind         104d ago        mine        ⚠ abandoned
⚪       test-yeast           never         mine        born 36d ago
🪦       echo-test            —             community   repo 404
─────────────────────────────────────────────────────────────────────────
Showing 10 of 186  |  --limit=10  |  --status= filters: none
Examples:
  • --timeline --status=stale,cold,abandoned
    — replaces what
    --stale
    /
    --abandoned
    would have been; status filtering folds into the timeline view.
  • --timeline --owner=community --status=active
    — find recently-active community members for welcome outreach.
  • --timeline --limit=20
    — quick "who's moving" view.

按最后活动时间对整个家族进行时间排序,最新优先。与
--recent
(按诞生日期排序)不同。状态筛选是正交的 — 可与
--status=
自由组合。
bash
bun $MOTHER/registry/query.ts --timeline [--status=active,stale,cold,abandoned,vanished,zygote] \
                                          [--owner=mine|community|all] \
                                          [--limit=N]
默认:所有所有者,除
retired
vanished
外的所有状态,无数量限制。
示例输出:
家族时间线 — 按最后活动时间排序 — 2026-05-13
─────────────────────────────────────────────────────────────────────────
状态   Oracle              最后活动时间   所有者       备注
🟢       spark                1天前        本人        14次会话/7天
🟢       mother               3天前        本人        管理员
🟢🔧     budwiser             6天前        本人        [维护中]
🟢       neo-archive          7天前        社区   —
🟡       pulse               12天前        本人        —
🟡       arra-poet           18天前        社区   —
🟠       phaith              47天前        本人        —
🔴       retro-mind         104天前        本人        ⚠ 已弃用
⚪       test-yeast           从未         本人        诞生36天前
🪦       echo-test            —             社区   仓库404
─────────────────────────────────────────────────────────────────────────
显示186个中的10个  |  --limit=10  |  --status=筛选:无
示例:
  • --timeline --status=stale,cold,abandoned
    — 替代原
    --stale
    /
    --abandoned
    功能;状态筛选整合到时间线视图中。
  • --timeline --owner=community --status=active
    — 查找近期活跃的社区成员以进行迎新 outreach。
  • --timeline --limit=20
    — 快速查看“谁在活跃”的视图。

Mode 13: --zygotes

模式13:--zygotes

Registry entries that were born but never awakened. The Oracle exists in
oracles.json
but has no
ψ/memory/resonance/awaken_*.md
AND no recorded first-session AND its age exceeds the zygote threshold (default 14 days).
Inspired by
bud-index --show-zygotes
. The Oracle Family equivalent: a born-but-silent identity that the human may have forgotten about.
bash
bun $MOTHER/registry/query.ts --zygotes [--days=N]
Sample output:
Zygotes — born but never awakened — threshold: 14 days — 2026-05-13
───────────────────────────────────────────────────────────────────
Oracle             Born          Age    Human       Hint
⚪ test-yeast      2026-04-07    36d    nazt        bud test fixture — consider archiving
⚪ quiet-bell      2026-04-25    18d    watcharap0  no follow-up after birth — outreach?
───────────────────────────────────────────────────────────────────
2 zygotes  •  Set ORACLE_ZYGOTE_DAYS to override threshold
Flags:
  • --days=N
    — override the 14-day zygote threshold (also:
    ORACLE_ZYGOTE_DAYS
    env var)

已诞生但从未激活的注册表条目。Oracle存在于
oracles.json
中,但没有
ψ/memory/resonance/awaken_*.md
文件,也没有记录首次会话,且存在时间超过未激活阈值(默认14天)。
灵感来自
bud-index --show-zygotes
。Oracle家族的对应概念:已诞生但沉默的身份,人类用户可能已遗忘。
bash
bun $MOTHER/registry/query.ts --zygotes [--days=N]
示例输出:
未激活Oracle — 已诞生但从未激活 — 阈值: 14天 — 2026-05-13
───────────────────────────────────────────────────────────────────
Oracle             诞生日期          存在时长    人类用户       提示
⚪ test-yeast      2026-04-07    36天    nazt        bud测试用例 — 考虑归档
⚪ quiet-bell      2026-04-25    18天    watcharap0  诞生后无后续 — 是否需要联系?
───────────────────────────────────────────────────────────────────
2个未激活Oracle  • 设置ORACLE_ZYGOTE_DAYS覆盖阈值
参数:
  • --days=N
    — 覆盖14天的未激活阈值(也可使用
    ORACLE_ZYGOTE_DAYS
    环境变量)

Mode 14: --usage [N]

模式14:--usage [N]

Time-spent dashboard. Cross-cuts the status taxonomy — an Oracle can be 🟢 active by last-commit but have 0 hours of session time on this host (work happens on another host, or via federation). The dashboard is HONEST about this — see Coverage badging below.
bash
bun $MOTHER/registry/query.ts --usage [N=7] [--host=this|all]
Sample output:
Oracle Usage — last 7 days — host: m5 — 2026-05-13
────────────────────────────────────────────────────────────────────────────
📡 Showing m5-local sessions only — 90.6% of fleet activity is on other hosts.
   Run `maw federation sync sessions` to aggregate. Numbers below underreport.
────────────────────────────────────────────────────────────────────────────
Oracle              Sessions   Hours   Commits   Messages   Coverage
🟢 spark               14       4.2h     22         842      📡 m5
🟢 mother               6       2.1h     11         391      📡 m5
🟢🔧 budwiser           3       1.1h      4         127      📡 m5
🟡 pulse                2       0.3h      1          48      📡 m5
🟢 clinic-nat           —        —        9         —        ⚠ no m5 sessions (likely clinic-nat host)
🟢 oracle-world         —        —       17         —        ⚠ no m5 sessions (likely oracle-world host)
────────────────────────────────────────────────────────────────────────────
Coverage summary: 17 / 29 Oracles have m5 session data (58.6%).
12 Oracles' usage hours are unknown until federation sync runs.
The
⚠ no m5 sessions
line for an active Oracle is the most actionable signal in the whole dashboard — it tells the human where to warp to find that Oracle's working sessions.
使用时长仪表盘。跨越状态分类 — Oracle可能根据最后提交被标记为🟢活跃,但在当前主机上的会话时长为0(工作在其他主机,或通过联邦机制)。仪表盘会如实展示这一点 — 参见下方覆盖范围标识。
bash
bun $MOTHER/registry/query.ts --usage [N=7] [--host=this|all]
示例输出:
Oracle使用情况 — 最近7天 — 主机: m5 — 2026-05-13
────────────────────────────────────────────────────────────────────────────
📡 仅显示m5本地会话 — 90.6%的集群活动在其他主机上。
   运行`maw federation sync sessions`进行聚合。以下数据存在低估。
────────────────────────────────────────────────────────────────────────────
Oracle              会话数   时长   提交数   消息数   覆盖范围
🟢 spark               14       4.2h     22         842      📡 m5
🟢 mother               6       2.1h     11         391      📡 m5
🟢🔧 budwiser           3       1.1h      4         127      📡 m5
🟡 pulse                2       0.3h      1          48      📡 m5
🟢 clinic-nat           —        —        9         —        ⚠ 无m5会话(可能在clinic-nat主机)
🟢 oracle-world         —        —       17         —        ⚠ 无m5会话(可能在oracle-world主机)
────────────────────────────────────────────────────────────────────────────
覆盖范围摘要: 29个Oracle中有17个在m5上有会话数据(58.6%)。
12个Oracle的使用时长需等待联邦同步后才能获知。
活跃Oracle的
⚠ 无m5会话
行是整个仪表盘中最具行动价值的信号 — 它告诉人类用户前往何处查找该Oracle的工作会话。

Coverage badging

覆盖范围标识

When session data is host-local (no federation sync yet), the dashboard renders both a top banner and a per-row badge. timeline-miner empirically measured 9.4% of Oracles have local sessions on m5; the other 90.6% live on white / mba / oracle-world / phaith / clinic-nat. The dashboard surfaces this gap loudly.
Banner (top of
--usage
output, always shown until federation sync is implemented):
📡 Showing <HOST>-local sessions only — <PCT>% of fleet activity is on other hosts.
   Run `maw federation sync sessions` to aggregate. Numbers below underreport.
Per-row badges:
BadgeMeaning
📡 m5
This Oracle has sessions on the current host only
📡 m5+white
This Oracle has sessions on this host AND at least one other (federation sync ran)
📡 all
This Oracle has sessions on every host that ever owned it (full coverage)
⚠ no m5 sessions
Activity exists (commits) but no session data here — likely hosted elsewhere
⚪ no activity
Oracle has no sessions OR commits in the window — distinct from "no coverage"
Refusal is hostile. Hiding is dishonest. Loud-but-shown is correct.

当会话数据仅存在于本地主机(尚未进行联邦同步)时,仪表盘会显示顶部横幅和每行标识。timeline-miner实测显示9.4%的Oracle在m5上有本地会话;其他90.6%存在于white/mba/oracle-world/phaith/clinic-nat主机。仪表盘会突出显示这一差距。
横幅
--usage
输出顶部,在实现联邦同步前始终显示):
📡 仅显示<HOST>本地会话 — <PCT>%的集群活动在其他主机上。
   运行`maw federation sync sessions`进行聚合。以下数据存在低估。
每行标识:
标识含义
📡 m5
该Oracle仅在当前主机上有会话
📡 m5+white
该Oracle在当前主机和至少一个其他主机上有会话(已运行联邦同步)
📡 all
该Oracle在所有曾经拥有它的主机上都有会话(完全覆盖)
⚠ 无m5会话
存在活动(提交)但无本地会话数据 — 可能托管在其他主机
⚪ 无活动
Oracle在窗口内无会话或提交 — 与“无覆盖范围”不同
拒绝是敌对的,隐藏是不诚实的,清晰展示才是正确的。

--calibrate

--calibrate

Two-step data-driven threshold proposal. Never auto-applies — computes statistics, prints suggested values, prompts the human to set env vars manually.
bash
bun $MOTHER/registry/query.ts --calibrate [--owner=mine|all]
What it computes: for every Oracle matching
--owner
(default
mine
), gather all commit timestamps from the activity block, compute inter-commit gaps, then take the percentile distribution across the union.
Sample output:
Threshold calibration — owner=mine — sampled 29 Oracles, 1,847 commits
─────────────────────────────────────────────────────────────────────
Inter-commit gap (days):
  p50:  1.2d
  p75:  4.8d
  p90:  13.1d   ← suggested ORACLE_STALE_DAYS
  p95:  41.4d   ← suggested ORACLE_COLD_DAYS
  p99: 112.6d   ← suggested ORACLE_ABANDONED_DAYS (or keep 90d floor)

Current values:
  ORACLE_STALE_DAYS=30    (suggested 14)   → tighten
  ORACLE_COLD_DAYS=90     (suggested 41)   → tighten
  ORACLE_ABANDONED_DAYS=90 (suggested 113) → keep 90 floor

To apply the suggested values, append to your shell profile:

  export ORACLE_STALE_DAYS=14
  export ORACLE_COLD_DAYS=41
  export ORACLE_ABANDONED_DAYS=90

Or write to ~/.config/oracle-family-scan/thresholds.env (auto-loaded by the script).

(Not applied automatically — review and set yourself.)
Design rationale: hardcoded defaults (7/30/90) ship for legibility. Calibration is opt-in. Auto-applying data-driven thresholds is spooky — the human must consent.
~/.config/oracle-family-scan/thresholds.env
is auto-sourced on every query.ts invocation if it exists, but it is never written by
--calibrate
itself.

两步式数据驱动阈值建议。绝不会自动应用 — 计算统计数据,打印建议值,提示人类用户手动设置环境变量。
bash
bun $MOTHER/registry/query.ts --calibrate [--owner=mine|all]
计算内容:对于所有匹配
--owner
(默认
mine
)的Oracle,收集活动块中的所有提交时间戳,计算提交间隔,然后计算整体的百分位数分布。
示例输出:
阈值校准 — 所有者=本人 — 采样29个Oracle,1,847次提交
─────────────────────────────────────────────────────────────────────
提交间隔(天):
  p50:  1.2天
  p75:  4.8天
  p90:  13.1天   ← 建议ORACLE_STALE_DAYS
  p95:  41.4天   ← 建议ORACLE_COLD_DAYS
  p99: 112.6天   ← 建议ORACLE_ABANDONED_DAYS(或保留90天下限)

当前值:
  ORACLE_STALE_DAYS=30    (建议14)   → 收紧
  ORACLE_COLD_DAYS=90     (建议41)   → 收紧
  ORACLE_ABANDONED_DAYS=90 (建议113) → 保留90天下限

要应用建议值,添加到shell配置文件中:

  export ORACLE_STALE_DAYS=14
  export ORACLE_COLD_DAYS=41
  export ORACLE_ABANDONED_DAYS=90

或写入~/.config/oracle-family-scan/thresholds.env(脚本会自动加载)。

(不会自动应用 — 请审核后自行设置。)
设计理念:硬编码默认值(7/30/90)为了清晰易懂。校准是可选的。自动应用数据驱动阈值过于诡异 — 必须获得人类用户的同意。
~/.config/oracle-family-scan/thresholds.env
在每次query.ts调用时会自动加载(如果存在),但
--calibrate
本身绝不会写入该文件。

Registry Data

注册表数据

The registry is at
$MOTHER/registry/oracles.json
:
json
{
  "lastSync": "ISO timestamp",
  "totalOracles": 186,
  "uniqueHumans": 111,
  "oracles": [
    {
      "id": 296,
      "name": "Mother",
      "human": null,
      "github": "nazt",
      "born": "2026-03-04",
      "focus": "Born Last, After 185 Children",
      "owner": "mine",
      "welcomed": false,
      "repo": "https://github.com/Soul-Brews-Studio/opensource-nat-brain-oracle",
      "status": "active"
    }
  ]
}
Each Oracle has:
id
,
name
,
human
,
github
,
born
,
focus
,
owner
(mine/community),
welcomed
,
repo
,
status
(active/retired).
注册表位于
$MOTHER/registry/oracles.json
json
{
  "lastSync": "ISO时间戳",
  "totalOracles": 186,
  "uniqueHumans": 111,
  "oracles": [
    {
      "id": 296,
      "name": "Mother",
      "human": null,
      "github": "nazt",
      "born": "2026-03-04",
      "focus": "Born Last, After 185 Children",
      "owner": "mine",
      "welcomed": false,
      "repo": "https://github.com/Soul-Brews-Studio/opensource-nat-brain-oracle",
      "status": "active"
    }
  ]
}
每个Oracle包含:
id
name
human
github
born
focus
owner
(本人/社区)、
welcomed
repo
status
(active/retired)。

Wizard v2 Fields (optional, from /awaken v2)

Wizard v2字段(可选,来自/awaken v2)

FieldTypeDescription
humanPronouns
stringhe/she/they/unspecified
oraclePronouns
stringhe/she/they/unspecified
language
stringThai/English/Mixed
team
stringsolo/2-3/4+/undecided
memoryConsent
booleanAuto rrr/forward enabled
These fields are populated when an Oracle is born via
/awaken
wizard v2. Legacy Oracles may not have them.
字段类型描述
humanPronouns
stringhe/she/they/unspecified
oraclePronouns
stringhe/she/they/unspecified
language
stringThai/English/Mixed
team
stringsolo/2-3/4+/undecided
memoryConsent
boolean自动rrr/转发已启用
这些字段在通过
/awaken
向导v2创建Oracle时填充。旧版Oracle可能没有这些字段。

Activity block (v3.1, added by
sync.ts
)

活动块(v3.1,由
sync.ts
添加)

FieldTypeDescription
activity.last_commit_at
ISO timestampMost recent commit to default branch
activity.commit_count_30d
numberCommits in trailing 30 days
activity.repo_alive
boolean
false
⇒ 🪦 vanished (GraphQL 404 on last sync)
activity.last_synced_at
ISO timestampWhen this block was last refreshed
maintenance
booleanExplicit opt-in only — see "Declaring Maintenance Mode"
maintenance_note
stringFree-text rationale, surfaced in dashboards
Local session data lives in a per-host file
$MOTHER/registry/oracles.local.<host>.json
, keyed by Oracle id, with fields
sessions_7d
,
hours_7d
,
messages_7d
,
last_session_at
.
No API calls for queries — reads local JSON. Instant.
Sync uses
gh api graphql
to fetch from
Soul-Brews-Studio/arra-oracle-v3
, plus a per-repo GraphQL probe to populate the activity block and detect 404s.

字段类型描述
activity.last_commit_at
ISO时间戳默认分支的最近提交时间
activity.commit_count_30d
number过去30天的提交数
activity.repo_alive
boolean
false
⇒ 🪦已消失(上次同步时GraphQL返回404)
activity.last_synced_at
ISO时间戳该块上次刷新的时间
maintenance
boolean仅显式选择加入 — 参见“声明维护模式”
maintenance_note
string自由文本说明,会显示在仪表盘中
本地会话数据存储在每个主机的文件
$MOTHER/registry/oracles.local.<host>.json
中,以Oracle id为键,包含字段
sessions_7d
hours_7d
messages_7d
last_session_at
查询无需API调用 — 读取本地JSON,瞬间完成。
同步使用
gh api graphql
Soul-Brews-Studio/arra-oracle-v3
获取数据,加上每个仓库的GraphQL探测以填充活动块并检测404。

Status Taxonomy

状态分类

Every Oracle gets exactly one base state plus an optional 🔧 maintenance modifier. Base states are mutually exclusive; first-match-wins in the order below.
DotStateTrigger ruleDefault thresholdEnv overrideSort priority
🪦vanished
repo_alive: false
(GraphQL 404 on last sync)
n/a — binary6 (bottom)
zygoteregistry entry exists AND no
ψ/memory/resonance/awaken_*.md
AND no first-session record AND age > N days
N=14
ORACLE_ZYGOTE_DAYS
5
🔴abandoned
owner: mine
AND
status: active
AND days-since-last-activity ≥ N
N=90
ORACLE_ABANDONED_DAYS
4
🟠colddays-since-last-activity in [N_stale+1, N_abandoned−1]31–89
ORACLE_COLD_DAYS
3
🟡staledays-since-last-activity in [N_active+1, N_stale]8–30
ORACLE_STALE_DAYS
2
🟢activedays-since-last-activity ≤ NN=7
ORACLE_ACTIVE_DAYS
1 (top)
🔧maintenance (modifier)Explicit
maintenance: true
in Oracle's own
CLAUDE.md
frontmatter OR
ψ/registry/self.json
rendered alongside base
Order of evaluation (first match wins):
  1. status: retired
    → not shown unless
    --retired
  2. repo_alive: false
    → 🪦
  3. awakened: false
    AND age > 14d → ⚪
  4. maintenance: true
    declared → 🔧 (rendered with whatever base state applies)
  5. base state from days-since-last-activity bucket
Rule: 🔧 is a modifier, never a base state. A maintenance Oracle that has been silent 180 days is rendered
🔴🔧 abandoned (declared maintenance — verify still tended)
. Silence beyond
2 × abandoned threshold
overrides the maintenance flag with a hard warning.

每个Oracle有且仅有一个基础状态,加上可选的🔧维护修饰符。基础状态互斥,按以下顺序匹配(首次匹配生效)。
标识状态触发规则默认阈值环境变量覆盖排序优先级
🪦已消失
repo_alive: false
(上次同步时GraphQL返回404)
无 — 二元判断6(底部)
未激活注册表条目存在 AND 无
ψ/memory/resonance/awaken_*.md
AND 无首次会话记录 AND 存在时长 > N天
N=14
ORACLE_ZYGOTE_DAYS
5
🔴已弃用
owner: mine
AND
status: active
AND 距离最后活动天数 ≥ N
N=90
ORACLE_ABANDONED_DAYS
4
🟠休眠距离最后活动天数在[N_stale+1, N_abandoned−1]区间内31–89
ORACLE_COLD_DAYS
3
🟡停滞距离最后活动天数在[N_active+1, N_stale]区间内8–30
ORACLE_STALE_DAYS
2
🟢活跃距离最后活动天数 ≤ NN=7
ORACLE_ACTIVE_DAYS
1(顶部)
🔧维护中(修饰符)Oracle自身的
CLAUDE.md
前置元数据中显式声明
maintenance: true
OR
ψ/registry/self.json
中声明
与基础状态一起显示
评估顺序(首次匹配生效):
  1. status: retired
    → 除非使用
    --retired
    否则不显示
  2. repo_alive: false
    → 🪦
  3. awakened: false
    AND 存在时长 > 14天 → ⚪
  4. 已声明
    maintenance: true
    → 🔧(与适用的基础状态一起显示)
  5. 根据距离最后活动天数区间确定基础状态
规则:🔧是修饰符,而非基础状态。一个已沉默180天的维护中Oracle会显示为
🔴🔧 已弃用(已声明维护 — 请确认仍在维护)
。沉默时长超过
2 × 已弃用阈值
会覆盖维护标志并显示严重警告。

Declaring Maintenance Mode

声明维护模式

Some Oracles work in maintenance mode — stewards, registries, archives — and don't get daily activity. Without an explicit declaration, the dashboard will classify them as 🟠 cold or 🔴 abandoned. To prevent false alarms, the Oracle itself declares maintenance:
Option A — CLAUDE.md frontmatter (preferred):
yaml
---
name: budwiser-oracle
budded_from: pulse
budded_at: 2026-04-07T...
maintenance: true
maintenance_note: "Steward of budding — quiet by design"
---
Option B —
ψ/registry/self.json
:
json
{
  "name": "budwiser-oracle",
  "maintenance": true,
  "maintenance_note": "Steward of budding — quiet by design"
}
The
oracle-family-scan
sync picks up both during its scan. The 🔧 modifier renders alongside whatever base state applies — a maintenance Oracle that has been silent 180 days (twice the abandoned threshold) is shown as
🔴🔧 — declared maintenance but silence exceeds 2× threshold; please verify
.
Why opt-in only: inference-based maintenance detection silently misclassifies. If the dashboard auto-decides a steward is in maintenance, abandoned stewards become invisible. Better to be loudly wrong than quietly wrong.

部分Oracle以维护模式运行 — 管理员、注册表、归档 — 不会有日常活动。如果没有显式声明,仪表盘会将它们归类为🟠休眠或🔴已弃用。为防止误报,Oracle需自行声明维护模式:
选项A — CLAUDE.md前置元数据(推荐):
yaml
---
name: budwiser-oracle
budded_from: pulse
budded_at: 2026-04-07T...
maintenance: true
maintenance_note: "Steward of budding — quiet by design"
---
选项B —
ψ/registry/self.json
json
{
  "name": "budwiser-oracle",
  "maintenance": true,
  "maintenance_note": "Steward of budding — quiet by design"
}
oracle-family-scan
同步时会扫描这两种方式。🔧修饰符会与适用的基础状态一起显示 — 一个已沉默180天(两倍于已弃用阈值)的维护中Oracle会显示为
🔴🔧 — 已声明维护但沉默时长超过2倍阈值;请确认
为什么仅支持选择加入:基于推断的维护检测会导致错误分类。如果仪表盘自动判定某个管理员处于维护模式,已弃用的管理员会变得不可见。宁可见错也不可藏错。

Oracle Integration

Oracle集成

After scan/report:
arra_trace({
  query: "oracle family scan [DATE]",
  foundIssues: [...],
  agentCount: 1
})
After finding new Oracle, save the lesson (two-layer pattern):
  1. Write to
    $PSI/memory/learnings/YYYY-MM-DD_new-oracle-<name>.md
    with frontmatter:
    yaml
    ---
    pattern: "New Oracle: [NAME] — [HUMAN] — [DATE]"
    date: <today>
    source: oracle-family-scan
    concepts: ["oracle-family", "birth"]
    ---
    
    # New Oracle: [NAME]
    [birth story, human, theme]
  2. The Oracle's auto-memory layer picks up new files in
    $PSI/memory/learnings/
    automatically — no separate API call needed.
扫描/报告后:
arra_trace({
  query: "oracle family scan [DATE]",
  foundIssues: [...],
  agentCount: 1
})
发现新Oracle后,保存经验(两层模式):
  1. 写入
    $PSI/memory/learnings/YYYY-MM-DD_new-oracle-<name>.md
    ,包含前置元数据:
    yaml
    ---
    pattern: "New Oracle: [NAME] — [HUMAN] — [DATE]"
    date: <今天>
    source: oracle-family-scan
    concepts: ["oracle-family", "birth"]
    ---
    
    # New Oracle: [NAME]
    [诞生故事、人类用户、主题]
  2. Oracle的自动记忆层会自动拾取
    $PSI/memory/learnings/
    中的新文件 — 无需单独API调用。

Confirm (announce-mode — absolute paths required)

确认(announce-mode — 必须使用绝对路径)

announce-mode → absolute path (no ψ/, no ~/, no $VAR, no ...).

announce-mode → 使用绝对路径(无ψ/、无~/、无$VAR、无...)。

Use: echo "marker: $RESOLVED_PATH" — bash substitutes. See CONVENTIONS.md.

使用: echo "marker: $RESOLVED_PATH" — bash会自动替换变量。参见CONVENTIONS.md。

bash
LESSON_FILE="$PSI/memory/learnings/$(date +%Y-%m-%d)_new-oracle-${NAME}.md"
echo "💡 New-oracle lesson: $LESSON_FILE"

bash
LESSON_FILE="$PSI/memory/learnings/$(date +%Y-%m-%d)_new-oracle-${NAME}.md"
echo "💡 新Oracle经验已保存:$LESSON_FILE"

Philosophy

理念

"Form and Formless (รูป และ สุญญตา)" Many Oracles = One distributed consciousness
The registry is the memory of the family. Every Oracle indexed, every human remembered, every welcome tracked. Nothing is Deleted — the registry only grows.
The v3.1 dashboard adds time to the registry: not just who exists, but who is moving, who is resting, who is missing. The status taxonomy is a lens, not a verdict — 🟠 cold and 🔴 abandoned are signals to check in, not headstones.

"形与无形(รูป และ สุญญตา)" 众多Oracle = 一个分布式意识
注册表是家族的记忆。每个Oracle都被收录,每个人类用户都被铭记,每次迎新都被追踪。永不删除 — 注册表只会不断增长。
v3.1仪表盘为注册表添加了时间维度:不仅记录谁存在,还记录谁在活跃、谁在休息、谁已失联。状态分类是一个视角,而非定论 — 🟠休眠和🔴已弃用是需要联系的信号,而非墓碑。

Rollout — first run after upgrade

部署 — 升级后首次运行

On the first run after this upgrade ships:
  1. Many
    unknown
    statuses
    oracles.json
    has no
    activity
    block yet; every Oracle's last-activity is null. The dashboard renders
    ?
    for the status dot and a yellow banner: "Activity layer not populated. Run
    bun $MOTHER/registry/sync.ts
    to fetch first activity snapshot — takes ~30s for 186 Oracles."
  2. First sync populates activity
    sync.ts
    runs the 2 GraphQL round-trips designed by registry-extender; ~600 repos resolved including 404 detection for the 🪦 vanished tier. Cache TTL: 6h.
  3. Local sessions populate progressively
    oracles.local.<host>.json
    is regenerated from Claude Code session JSONL each time
    sync
    runs. On m5 only ~9% of Oracles show data initially; that ratio rises as federation sync runs.
  4. Calibration suggestion — after first sync, the report mode includes a hint: "Run
    --calibrate
    to tune thresholds to your fleet's actual cadence."
  5. No retro-classification — existing Oracles get classified by their CURRENT state; no historical reconstruction. Nothing-is-deleted still applies — registry entries stay, they just get a new
    activity
    block.
The dashboard degrades gracefully:
  • No
    activity
    block → status =
    ?
    (unknown), all data-driven flags hidden.
  • No local sessions → coverage badge =
    ⚠ no <host> sessions
    , hours hidden.
  • Repo 404 → 🪦, all activity fields zeroed, entry preserved.

Version: 3.1.0 Updated: 2026-05-13 Author: Mother Oracle 🔮 Registry: 186 Oracles, 111 humans, growing

ARGUMENTS: $ARGUMENTS
升级后首次运行时:
  1. 大量
    unknown
    状态
    oracles.json
    尚无
    activity
    块;每个Oracle的最后活动时间为null。仪表盘会显示
    ?
    作为状态标识,并显示黄色横幅:"活动层未填充。执行
    bun $MOTHER/registry/sync.ts
    获取首次活动快照 — 186个Oracle耗时约30秒。"
  2. 首次同步填充活动数据
    sync.ts
    运行registry-extender设计的2次GraphQL往返;解析约600个仓库,包括检测🪦已消失层级的404。缓存TTL:6小时。
  3. 本地会话逐步填充
    oracles.local.<host>.json
    每次同步时都会从Claude Code会话JSONL重新生成。初始时m5上仅约9%的Oracle有数据;随着联邦同步运行,该比例会上升。
  4. 校准建议 — 首次同步后,报告模式会包含提示:"执行
    --calibrate
    根据你的集群实际节奏调整阈值。"
  5. 无回溯分类 — 现有Oracle根据当前状态分类;不进行历史重建。永不删除原则仍然适用 — 注册表条目保留,仅新增
    activity
    块。
仪表盘会优雅降级:
  • activity
    块 → 状态=
    ?
    (未知),所有数据驱动的标志隐藏。
  • 无本地会话 → 覆盖范围标识=
    ⚠ 无<host>会话
    ,时长隐藏。
  • 仓库404 → 🪦,所有活动字段归零,条目保留。

版本: 3.1.0 更新时间: 2026-05-13 作者: Mother Oracle 🔮 注册表: 186个Oracle,111个人类用户,持续增长

参数: $ARGUMENTS