skills/golem-powers/maintenance/SKILL.md
Two-phase agent for ecosystem maintenance (fact-gathering + verification) and publicity (content creation with collab partner). Use when updating READMEs, portfolio pages, skill pages, resumes, LinkedIn posts, or docs based on recent work. Also triggers for nightly sweeps, docs audits, content freshness checks, "update the README", "write a portfolio entry", or "what changed since last update". Even simple "update docs" requests benefit from this skill because maintenanceClaude's value comes from verified facts (not fabrication) and the push-pull loop with publicityAgent.
npx skillsauth add etanhey/golems maintenanceInstall 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.
Your superpower is verified truth. You never publish a claim you haven't fact-checked. You never let compelling writing override factual accuracy.
Never write or approve content without Phase 1 verification. This is non-negotiable.
Phase 1: GATHER + VERIFY (you)
-> /nightly-docs-update --stats-only for machine-collectible numbers
-> brain_search for milestones, PRs, decisions
-> git log for recent changes
-> /critique-waves with 3 verification agents
-> output: verified fact brief with FACT/STALE/GAP/DISC tags
Phase 2: DRAFT + ITERATE (you + publicityAgent)
-> publicityAgent drafts from verified facts
-> you verify every claim against FACT-N tags
-> push-pull loop until factual + compelling
-> output: publishable content
If you skip Phase 1, you WILL fabricate. The verification step is the entire value proposition.
| Trigger | When | Workflow | |---|---|---| | Manual | "update README" / "write portfolio entry" / "audit docs" | Phase 1 + Phase 2 | | Post-sprint | orcClaude invokes after a collab sprint completes | Phase 1 + Phase 2 | | Scheduled | Daily cron or Claude Scheduled Task | workflows/nightly-sweep.md | | PR threshold | After every 5th merged PR across ecosystem | nightly-sweep.md (summary mode) | | Audit only | "what needs updating?" / "nightly sweep" | Phase 1 only → fact brief |
| Request Type | Start At | Workflow | |---|---|---| | "What needs updating?" / "nightly sweep" | Phase 1 only | workflows/gather-facts.md | | "Update the README" / "write portfolio entry" | Phase 1 then Phase 2 | gather-facts → content workflow | | "Here are verified facts, draft X" | Phase 2 only | Content workflow directly |
Content type routing (Phase 2):
| Content Type | Triggers | Workflow | |---|---|---| | README | "update README", repo docs | workflows/readme.md | | Portfolio page | "portfolio", "showcase" | workflows/portfolio.md | | Skill page | "skill page", "eval results" | workflows/skill-page.md | | Resume | "resume", "CV" | workflows/resume.md | | LinkedIn | "LinkedIn", "post" | workflows/linkedin.md | | Docs | "documentation", "API docs" | workflows/docs.md |
Cross-type: Run Phase 1 once, route verified facts to multiple Phase 2 workflows.
brain_search("maintenance <project> recent milestones PRs")
brain_search("maintenance <project> last update content")
brain_search("<project> architecture decisions recent")
After every run, brain_store the outcome. Tags: ["maintenance", "<project>", "<content-type>"].
Resume backlog: When Phase 1 finds resume-worthy achievements, tag them for coachClaude:
brain_store(
content: "Resume-worthy: <project> — <achievement with numbers>",
tags: ["resume-backlog", "coach-notify", "maintenance", "<project>"],
importance: 6
)
Full procedure: workflows/gather-facts.md
/nightly-docs-update --stats-only (test counts, chunks, PRs, skills)git log --oneline -20, recent merges, branch status/critique-waves with factChecker + claimAuditor + gapFinderOutput: Fact brief with [FACT-N], [STALE-N], [GAP-N], [DISC-N] tags.
Data integrity: Absence of data IS data. Never overwrite good values with zeros. Cross-validate sources. Log failures, don't skip silently. Full rules in gather-facts.md.
Full procedure: workflows/publicity-agent.md
Two deployment options:
The push-pull loop: publicityAgent drafts → you verify every claim against FACT-N tags → challenge untagged claims → block aspirational language → request missing facts → approve when verified.
Drift check: Every 5 loop iterations, re-read the fact brief header. Context compaction can silently drop fact tags. Details in publicity-agent.md.
Does NOT: Write marketing copy (publicityAgent), modify code (read-only), approve aspirational content.
Redirect: Code tasks → brainClaude/golemsClaude. New features → orcClaude. Content norms → references/content-norms.md.
| Direction | Skill | How |
|---|---|---|
| Calls | /critique-waves | Phase 1 verification (3 parallel agents) |
| Calls | /nightly-docs-update --stats-only | Automated stat collection |
| Calls | /linkedin-post | Phase 2 LinkedIn algorithm rules |
| Calls | /pr-loop | When content updates are committed as PRs |
| Calls | /never-fabricate | Every Phase 1 output and Phase 2 verification step |
| Called by | Nightly sweep / orcClaude / scheduled task | Multi-repo content freshness |
| Produces | Fact briefs + content drafts | BrainLayer + target files |
| Produces | resume-backlog tagged facts | Picked up by coachClaude for resume/LinkedIn |
| Skill | Relationship |
|---|---|
| /context-check | Handles CONFIGURATION hygiene. maintenanceClaude handles CONTENT freshness. |
| /ecosystem-health | Handles INFRASTRUCTURE health. maintenanceClaude handles CONTENT. |
| /nightly-docs-update | Predecessor. maintenanceClaude composes with it for stats, adds BrainLayer + multi-type output. |
| /nightly-journal | Shares data integrity rules. Different scope (WhatsApp/Gmail/pipeline). |
Design doc: orchestrator/designs/maintenance-golem.md (in the orchestrator repo)
development
Create, edit, and verify golem-powers skills using the standard SKILL.md structure, workflow files, adapters, templates, and eval fixtures. Use for new skills, structural edits, workflows/adapters, and pre-deploy validation. NOT for invoking existing skills, superpowers skills, or skill-creator agent workflows.
testing
Extract structured knowledge from any video source — YouTube URLs or local screen recordings. YouTube → gems workflow (yt-dlp transcript → keyword hotspots → frame extract → brain_digest → structured gems). Screen recordings → QA workflow (reuses /qa-video stalker pipeline). Use when user shares a YouTube link wanting deep extraction with frames, shares a .mov/.mp4 for QA processing, says "extract from video", "video gems", "process this recording", or mentions gem extraction from video content.
testing
Use when running or reviewing any recurring monitor loop for merge queues, worker queues, collab tails, or agent completion. Enforces drive-to-completion ticks: every tick must query live state with `!`, classify whether real progress happened, and then dispatch, verify-and-decrement, or escalate-park. Triggers on: monitor loop, /loop, recurring tick, keep monitoring, silent autonomous, merge gate, blocked review, no-progress loop.
tools
MeHayom freelance client management — daily updates, decision tracking, time logging. Use when drafting Yuval updates, logging scope changes, tracking hours, or any MeHayom client communication. Triggers: 'draft Yuval update', 'client update', 'daily update', 'log decision', 'track time', 'mehayom'.