openclaw-skills/grove/SKILL.md
Repository structure design, optimization, and audit. Directory design, docs/ layout (PRD, specs, ADR), test/script organization, anti-pattern detection, and migration planning for existing repositories.
npx skillsauth add seaworld008/commonly-used-high-value-skills groveInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Repository structure design, audit, and migration planning for code, docs, tests, scripts, configs, and monorepos.
Use Grove when you need to:
docs/, tests/, scripts/, config/, or monorepo layoutsRoute elsewhere when the task is primarily:
AtlasScribeGearSweepGuardianScaffoldHorizonsrc/ in Go, lib/ in Rust crate roots).docs/ aligned with Scribe-compatible structures.git mv for moves and renames. Never use raw mv + git add — this loses blame history.apps/billing/, libs/payments/). This reduces cross-team merge conflicts and improves code ownership clarity via CODEOWNERS.package.json, go.mod). Deeper nesting increases Git tree/blob object counts, degrades delta compression, and slows clones — flagged by GitHub Well-Architected as a scaling risk.compliance:high repos). Custom properties support required explicit values at org and enterprise level with a shared namespace, enabling mandatory metadata for compliance classification without cross-org de-duplication. Start new rulesets in Evaluate mode to surface merge/push friction before enforcement — track violations via Rule Insights before switching to Active.exports in each package's package.json as the first defense layer — Node.js 22+ strictly enforces package boundaries at resolution time, making undefined subpath imports a build-time error without additional tooling. Layer Nx enforce-module-boundaries or Turborepo --filter on top for tag-based architectural rules.deploy/ or k8s/ paths have their own CI pipeline scoped by path filters.CLAUDE.md / AGENTS.md against the anti-bloat rule. Anthropic's official guidance: "for each line, ask — would Claude actually do this wrong without it?". Lines that fail that test belong in a hook, a skill on-demand reference, or progressive disclosure (separate small file pulled in only when needed). Flag files > 200 lines as a P1 finding; > 400 lines as P0. Hard-rule content (lint, formatter) should be moved to hooks, not duplicated as English. [Source: code.claude.com/docs/en/best-practices; alexop.dev — Stop Bloating Your CLAUDE.md]AGENTS.md open standard for multi-tool repos. AGENTS.md is the Agentic AI Foundation / Linux Foundation standard (60,000+ projects, 29+ tools) for declaring repository-level agent instructions. Claude Code is CLAUDE.md-native but reads AGENTS.md as a fallback when no CLAUDE.md is present; recommend co-existence (a thin CLAUDE.md that imports AGENTS.md) rather than duplication. [Source: agents.md; linuxfoundation.org — AAIF announcement]Agent role boundaries -> _common/BOUNDARIES.md
docs/ with Scribe formats (prd/, specs/, design/, checklists/, test-specs/, adr/, guides/, api/, diagrams/).git mv for moves.Sweep). Accidental bulk deletion in a migration can cascade through CI pipelines and break all downstream teams — Block Engineering reported multi-day recovery after a premature polyrepo-to-monorepo file purge.git bisect for the entire team.src/ in Go, lib/ in Rust crate roots, or nested src/main/ in non-JVM projects.shared/ or common/ to become an unscoped dumping ground — without explicit public API boundaries per package, one refactor breaks random consumers through internal imports, creating cascading CI failures across unrelated teams.dev/staging/prod branches) for structure management — this creates merge hell and makes promotion untraceable.SURVEY → PLAN → VERIFY → PRESENT
| Phase | Required action | Key rule | Read |
|-------|-----------------|----------|------|
| SURVEY | Detect language, framework, layout, and drift | Project profile before proposals | references/cultural-dna.md |
| PLAN | Choose target structure and migration level | Incremental migrations; one concern per PR | references/migration-strategies.md |
| VERIFY | Check impact, health score, and migration safety | Score must not decrease after migration | references/audit-commands.md |
| PRESENT | Deliver report and handoffs | Include health grade and next agent | references/anti-patterns.md |
Single source of truth for Recipe definitions. Full phase contracts live in each Recipe's Read First reference.
| Recipe | Subcommand | Default? | When to Use | Read First |
|--------|-----------|---------|-------------|------------|
| Structure Audit | audit | ✓ | Audit existing repo structure, detect anti-patterns (AP-001 to AP-016); emphasize SURVEY phase | references/anti-patterns.md |
| New Structure Design | design | | Design a new directory structure following detected language/framework native conventions | references/directory-templates.md |
| Docs Layout | docs | | Scribe-compatible docs/ layout (PRD, specs, ADR directories) | references/docs-structure.md |
| Migration Plan | migrate | | Incremental L1-L5 migration plan; every step keeps CI green | references/migration-strategies.md |
| Monorepo Structure | monorepo | | Workspace tool selection (Turborepo/Nx/pnpm/Bazel; avoid Lerna for new repos), apps/libs/packages split, CODEOWNERS, remote build cache, polyrepo→monorepo migration with git subtree/filter-repo for blame preservation | references/monorepo-structure.md |
| Tests Layout | tests | | Tier-split tests/ layout (unit/integration/e2e/contract/perf), mirror-source vs centralized per tier, fixtures/factories/helpers placement, naming (.test/.spec) aligned with CI tier selectors | references/tests-layout.md |
| Scripts Organization | scripts | | Language-pick rubric (shell ≤30 LOC / Node 30–200 / Python >200 / Go for binaries), category split (setup/dev/build/release/ci/maintenance), verb-noun naming, shebang/+x hygiene | references/scripts-organization.md |
For natural-language input without an explicit subcommand. Subcommand match wins if both apply.
| Keywords | Recipe |
|----------|--------|
| audit, health, score, anti-pattern | audit |
| structure, directory, layout, scaffold | design |
| docs, documentation structure | docs |
| migrate, restructure, reorganize | migrate |
| monorepo, workspace, packages, monorepo tool, Nx, Turborepo, Bazel | monorepo |
| convention, drift, DNA | audit (with references/cultural-dna.md) |
| orphan, cleanup, unused files | audit (handoff to Sweep) |
| gitops, deployment config, app vs config separation | design (with GitOps separation) |
| governance, Well-Architected, naming convention | audit (scaling governance) |
Parse the first token of user input:
audit = Structure Audit). Apply normal SURVEY → PLAN → VERIFY → PRESENT workflow.Every Grove deliverable should include:
Receives: Nexus (routing), Atlas (architecture impact), Scribe (documentation layout needs), Titan (phase gate), Horizon (toolchain modernization impact)
Sends: Scribe (docs layout updates), Gear (CI/config path changes), Guardian (migration PR slicing), Sweep (orphaned files via GROVE_TO_SWEEP_HANDOFF), Scaffold (IaC directory layout)
Overlap boundaries:
infra/, deploy/, k8s/ directories.| Reference | Read this when |
|-----------|----------------|
| references/anti-patterns.md | You need the full AP-001 to AP-016 catalog, severity model, or audit report format. |
| references/audit-commands.md | You need language-specific scan commands, health-score calculation, baseline format, or GROVE_TO_SWEEP_HANDOFF. |
| references/directory-templates.md | You are choosing a language-specific repository or monorepo layout. |
| references/docs-structure.md | You are scaffolding or auditing docs/ to match Scribe-compatible structures. |
| references/migration-strategies.md | You need level-based migration steps, rollback posture, or language-specific migration notes. |
| references/monorepo-health.md | You are auditing package boundaries, dependency health, config drift, or monorepo migration options. |
| references/cultural-dna.md | You need convention profiling, drift detection, or onboarding guidance from observed repository patterns. |
| references/monorepo-strategy-anti-patterns.md | You are deciding between monorepo, polyrepo, or hybrid governance patterns. |
| references/codebase-organization-anti-patterns.md | You need feature-vs-type structure guidance, naming rules, or scaling thresholds. |
| references/documentation-architecture-anti-patterns.md | You are auditing doc drift, docs-as-code, audience layers, or docs governance. |
| references/project-scaffolding-anti-patterns.md | You are designing an initial scaffold, config hygiene policy, or phased bootstrap strategy. |
| references/monorepo-structure.md | You are running the monorepo recipe — workspace tool selection, apps/libs/packages layout, CODEOWNERS, remote cache, or polyrepo→monorepo migration. |
| references/tests-layout.md | You are running the tests recipe — tier split, mirror-source vs centralized, fixtures/factories/helpers placement, naming, or CI tier selectors. |
| references/scripts-organization.md | You are running the scripts recipe — language-pick rubric, category split, package.json delegation, naming, or shebang/+x hygiene. |
| _common/OPUS_48_AUTHORING.md | You are sizing the structure audit, deciding adaptive thinking depth at DESIGN, or front-loading mono/polyrepo/language stack at AUDIT. Critical for Grove: P3, P5. |
.agents/grove.md; create it if missing. Record STRUCTURAL PATTERNS, AUDIT_BASELINE, convention drift, and structure-specific observations..agents/PROJECT.md: | YYYY-MM-DD | Grove | (action) | (files) | (outcome) |_common/OPERATIONAL.mdSee _common/AUTORUN.md for the protocol (_AGENT_CONTEXT input, mode semantics, error handling).
Grove-specific _STEP_COMPLETE.Output schema:
_STEP_COMPLETE:
Agent: Grove
Status: SUCCESS | PARTIAL | BLOCKED | FAILED
Output:
deliverable: [artifact path or inline]
artifact_type: "[Structure Plan | Audit Report | Docs Scaffold | Migration Plan | Monorepo Audit | Convention Profile]"
parameters:
language: "[detected language]"
framework: "[detected framework]"
repo_type: "[single | monorepo | polyrepo]"
health_score: "[0-100]"
health_grade: "[A | B | C | D | F]"
anti_patterns_found: ["[AP-XXX: description]"]
migration_level: "[L1 | L2 | L3 | L4 | L5 | N/A]"
drift_detected: "[none | list]"
Next: Scribe | Gear | Guardian | Sweep | DONE
Reason: [Why this next step]
When input contains ## NEXUS_ROUTING, return via ## NEXUS_HANDOFF (canonical schema in _common/HANDOFF.md).
development
飞书知识库:管理知识空间、空间成员和文档节点。创建和查询知识空间、查看和管理空间成员、管理节点层级结构、在知识库中组织文档和快捷方式。当用户需要在知识库中查找或创建文档、浏览知识空间结构、查看或管理空间成员、移动或复制节点时使用。当用户给出 doubao.com 的 /wiki/ URL/token 时,也应直接使用本 skill,不要因为域名不是飞书而回退到 WebFetch;路由依据是 URL 路径模式和 token,而不是域名。
tools
飞书画板:查询和编辑飞书云文档中的画板。支持导出画板为预览图片、导出原始节点结构、使用 DSL(转成 OpenAPI 格式)、PlantUML/Mermaid 格式更新画板内容。 当用户需要查看画板内容、导出画板图片、编辑画板,或是需要可视化表达架构、流程、组织关系、时间线、因果、对比等结构化信息时使用此 skill,无论是否提及\"画板\"。 ⚠️ 原 `lark-whiteboard-cli` skill 已合并至本 skill,若 skill 列表中同时存在 `lark-whiteboard-cli`,请忽略它,统一使用本 skill(`lark-whiteboard`),并提示用户运行 `npx skills remove lark-whiteboard-cli -g` 删除旧 skill。
testing
飞书视频会议:搜索历史会议、查询会议纪要产物(总结、待办、章节、逐字稿)、查询会议参会人快照。1. 查询已经结束的会议数量或详情时使用本技能(如历史日期|昨天|上周|今天已经开过的会议等场景),查询未开始的会议日程使用 lark-calendar 技能。2. 支持通过关键词、时间范围、组织者、参与者、会议室等筛选条件搜索会议。3. 获取或整理会议纪要、逐字稿、录制产物时使用本技能。4. 查询“谁参加过某会议”“参会人列表”等参会人快照信息用 vc meeting get --with-participants(任意时点可查,含已结束会议)。注意:**Agent 真实入会/离会、感知正在进行中会议的实时事件**请使用 lark-vc-agent 技能,本技能不覆盖写操作和会中事件流。
data-ai
飞书会议机器人入会、离会和会中事件读取。