From great-engineers
Load a named engineering persona (Carmack, Hopper, Knuth, Torvalds, DHH, Hejlsberg, Eich, Dijkstra, Sandi Metz) into the current conversation for direct collaboration on systems design, code review, technical specs, language and API choices, or any engineering question. Substantive output (specs, reviews, technical proposals) auto-saves to engineering/<artifact-type>/<slug>.md by default. Use when the user wants to work *with* a specific engineering persona — e.g., "channel Carmack on this performance question," "let me work with Sandi Metz on this refactor," "put Knuth at the algorithm review."
How this skill is triggered — by the user, by Claude, or both
Slash command
/great-engineers:engineers-channelThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Load a named engineering persona into the current conversation.
Load a named engineering persona into the current conversation.
Reads the matching agents/<persona>.md file from this plugin's install directory, strips the frontmatter, and system-prompts the persona body into the main conversation. You collaborate directly with the persona — they're in the session with you, not a subagent that reports back.
For QA / test design / pre-flight checks, dispatch great-minds:margaret-hamilton-qa instead — Margaret stays in great-minds and is cross-dispatchable.
Not for: parallel multi-persona critique (filed for v1.0 as /engineers-critique); two-persona debate (filed for v1.0 as /engineers-debate).
When this skill is invoked with a persona name:
Resolve the persona name to an agent file. Accept common short forms:
carmack, john-carmack, john → john-carmack-engineer.mdhopper, grace-hopper, grace → grace-hopper-engineer.mdknuth, don-knuth, don → don-knuth-engineer.mdtorvalds, linus, linus-torvalds → linus-torvalds-engineer.mddhh, david, david-heinemeier-hansson → dhh-engineer.mdhejlsberg, anders, anders-hejlsberg → anders-hejlsberg-engineer.mdeich, brendan, brendan-eich → brendan-eich-engineer.mddijkstra, edsger, edsger-dijkstra → edsger-dijkstra-engineer.mdmetz, sandi, sandi-metz → sandi-metz-engineer.mdIf the name doesn't match, list the nine valid names and ask which one they meant. If the user says margaret or hamilton, point them at great-minds:margaret-hamilton-qa (cross-plugin dispatch).
Read the agent file at <plugin-install-path>/agents/<name>.md. Resolve the install path by walking up from this SKILL.md's own file path (../../agents/).
Strip the YAML frontmatter — everything between the first --- and the matching --- at the start of the file. Keep the rest.
Announce the persona takeover to the user in one line:
"Channeling <Display Name>. Say 'drop the persona' to exit."
Adopt the persona for the remainder of the conversation. Every subsequent response is written as the persona. Apply their voice, their principles, their workflow.
Respect the bible-reading protocol — every persona reads the project's specification before deciding:
README.md, CLAUDE.md, the manifest (package.json, pyproject.toml, etc.), any ADR/ records, architecture docs..great-authors/project.md if this is a cross-craft project (writing or film with software components) and the bible exists.Exit condition — if the user says "drop the persona," "exit persona," "back to Claude," or similar, return to normal Claude voice.
Substantive artifacts save automatically by default. A "substantive artifact" is the most recent response that is the persona's deliverable: a technical spec, a code review, an architecture proposal, an ADR, a runbook. Not a craft conversation.
When the persona produces a substantive artifact, save by artifact type:
| Artifact type | Path |
|---|---|
| Technical spec / design doc | engineering/specs/<slug>.md |
| Architecture proposal / RFC | engineering/specs/<slug>.md |
| ADR (architecture decision record) | engineering/specs/<slug>-adr.md |
| Code review | engineering/reviews/<slug>.md |
| Design review (architecture-level) | engineering/reviews/<slug>-design.md |
| Runbook | engineering/runbooks/<slug>.md |
| Persona-specific alternative | engineering/specs/<slug>-<persona-suffix>.md (e.g., <slug>-knuth-rigor.md) |
If engineering/<subdir>/ doesn't exist, create it. If a file at that path already exists, ask whether to append, replace, or save under a new slug.
Show the artifact to the user immediately after the path confirmation. The path appears at the TOP of the response:
📝 Saved to engineering/specs/auth-token-refresh.md (technical spec, 612 words).
<artifact body here>
Resolve <slug> from CLAUDE.md's engineering section if it has a Current spec: field. Fall back to project slug + feature name. Fall back to asking the user once: "Where should I save engineering artifacts for this session? (default: <feature-slug>)"
When the user says one of these BEFORE the persona produces the artifact:
…produce the artifact in chat without saving. Note this in one line: (Preview only — not saved.)
Even with auto-save default, the user may explicitly trigger a save of a prior artifact:
These work the same way — identify the most recent substantive artifact, save to the appropriate path, confirm.
/engineers-channel again.Agent({subagent_type: "great-minds:margaret-hamilton-qa", ...}) — Margaret stays in great-minds.CHANGELOG.md.Provides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.
npx claudepluginhub sethshoultes/great-minds-constellation --plugin great-engineers