Company Brain Company QA
topoteretes/cognee
Build one company memory from a SQL database, a support ticket export and a folder of documents, linked into one graph by cognee, then answer questions that need several of those sources together.
Create a company-mode organization together with the user — collect its id, name, mission, shared workspace, model and CEO budget one question at a time, confirm the whole thing in one summary, then…
$ npx skills add Prism-Shadow/penguin-harness --skill company-setup -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Prism-Shadow/penguin-harness company-setup --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Prism-Shadow/penguin-harness.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/agent-company/skills/company-setup .claude/skills/company-setup && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "company-setup" agent skill from https://github.com/Prism-Shadow/penguin-harness/tree/main/plugins/agent-company/skills/company-setup into .claude/skills/company-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "company-setup", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Prism-Shadow/penguin-harness/tree/main/plugins/agent-company/skills/company-setupType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Prism-Shadow/penguin-harness --skill company-setup -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Prism-Shadow/penguin-harness company-setup --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Prism-Shadow/penguin-harness.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/agent-company/skills/company-setup .agents/skills/company-setup && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "company-setup" agent skill from https://github.com/Prism-Shadow/penguin-harness/tree/main/plugins/agent-company/skills/company-setup into .agents/skills/company-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "company-setup", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Prism-Shadow/penguin-harness --skill company-setup -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Prism-Shadow/penguin-harness company-setup --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Prism-Shadow/penguin-harness.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/agent-company/skills/company-setup .cursor/skills/company-setup && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "company-setup" agent skill from https://github.com/Prism-Shadow/penguin-harness/tree/main/plugins/agent-company/skills/company-setup into .cursor/skills/company-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "company-setup", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Prism-Shadow/penguin-harness.git --path plugins/agent-company/skills/company-setup--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Prism-Shadow/penguin-harness --skill company-setup -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Prism-Shadow/penguin-harness company-setup --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Prism-Shadow/penguin-harness.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/agent-company/skills/company-setup .gemini/skills/company-setup && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "company-setup" agent skill from https://github.com/Prism-Shadow/penguin-harness/tree/main/plugins/agent-company/skills/company-setup into .gemini/skills/company-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "company-setup", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Prism-Shadow/penguin-harness company-setupInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Prism-Shadow/penguin-harness --skill company-setup -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Prism-Shadow/penguin-harness.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/agent-company/skills/company-setup .github/skills/company-setup && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "company-setup" agent skill from https://github.com/Prism-Shadow/penguin-harness/tree/main/plugins/agent-company/skills/company-setup into .github/skills/company-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "company-setup", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Prism-Shadow/penguin-harness --skill company-setup -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Prism-Shadow/penguin-harness company-setup --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Prism-Shadow/penguin-harness.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/agent-company/skills/company-setup .opencode/skills/company-setup && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "company-setup" agent skill from https://github.com/Prism-Shadow/penguin-harness/tree/main/plugins/agent-company/skills/company-setup into .opencode/skills/company-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "company-setup", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
company-setupCreate a company-mode organization together with the user — collect its id, name, mission, shared workspace, model and CEO budget one question at a time, confirm the whole thing in one summary, then…
Company Setup is an agent skill from Prism-Shadow/penguin-harness. Create a company-mode organization together with the user — collect its id, name, mission, shared workspace, model and CEO budget one question at a time, confirm the whole thing in one summary, then run penguin org create and hand the user over to company mode.
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: 🐧 Unified and Stable RSI Platform. The licence is Apache-2.0.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit d56d9ce. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
PENGUIN_API_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Company Setup loads about 2.7k tokens when it runs. Until then it costs about 69 tokens; SKILL.md has 1,582 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Prism-Shadow/penguin-harness at commit d56d9ce, republished under its Apache-2.0 licence (© Prism-Shadow). 1,582 words, ~2,706 tokens.
.claude/skills/company-setup/SKILL.md (or your agent's skills folder).Company mode is the second work mode of PenguinHarness: a Project's Agents organized into a company — a CEO at the root of a reporting tree, one standing desk session per employee, a calendar as the only periodic driver, a ticket board that carries the work, channels where @ mentions interrupt, and monthly budgets that pause spending before it runs away. Creating one takes six facts and a single command.
This skill is how you collect those six facts and run that command. It ends there. You never hire, never schedule a calendar event and never file a ticket: creation produces the CEO and nothing else, and the CEO does the rest — after it has proposed a plan and the board (the humans of the Project) has answered.
If the user's message only invokes this skill (e.g. "use company-setup skill") without naming a company to create, ask what organization they want and what it should do. One sentence is enough to start the questions below; do not create anything until every question has an answer and the user has said yes to the summary.
Look before the first question:
penguin org ls --json # the Project's organizations, so you never propose a taken idIf that call answers 404, company mode is off for this server (System settings › Server › Company mode). Say so and stop — nothing here can succeed until an admin turns it on.
Inside a harness agent session every command subprocess carries PENGUIN_API_URL, PENGUIN_API_TOKEN and PENGUIN_PROJECT_ID, and penguin org create reads that last one as its --project-id — so you normally pass no flag and the organization is created in the Project you are running in. Check which one that is before you create anything:
echo "${PENGUIN_PROJECT_ID:-default_project}"Name the Project in the summary. Pass --project-id <id> only when the user explicitly wants a different one.
One question per message, in the user's own language, in this order. Never batch them into a form and never fill one in yourself: an unanswered question is asked again, not guessed. Each answer is echoed back in the summary at the end, so a mistake costs one line, not a re-run.
[a-z][a-z0-9_]{1,63} — a lowercase letter, then lowercase letters, digits and underscores, 2–64 characters. Suggest one derived from what the user has already called the company: lowercase it, transliterate to ASCII, join the words with underscores and put co_ in front — "Plugin Marketplace" → co_plugin_marketplace. The prefix is the convention (co_ for an organization, ch_ for a channel, so an id says what it names); the server does not enforce it, so a user who wants a bare id gets one. Let them confirm or replace the suggestion. If nothing in the conversation names the company yet, ask question 2 first and derive the suggestion from that answer — those two questions swap, the rest of the order does not. Never propose an id already in penguin org ls; the server refuses it with 409 org_exists.--language zh|en only when the user wants the other one.
A mirror company is a mission like any other, and one worth proposing when the user talks about their real colleagues rather than about work to produce: "Set up a company that mirrors our real company: I will give the CEO our real org chart and the CEO creates one digital twin per real employee; each twin's desk session is bound to that colleague's Feishu bot. A twin only receives its own colleague's messages by default, answers what it can on its own and relays the rest to the relevant colleague's twin, who passes it on to the real person. The CEO hires nobody on its own, schedules nothing and files no tickets; the company only relays and solves what it can." Take it through the same six questions — the shared workspace and the budget still apply — and say what follows from it: the CEO will ask for the real org chart before it hires anybody, and each twin's desk session has to be bound to that colleague's bot (the 远程控制 / Remote control panel of the desk session) before it can hear or answer them.ceo/, and each hire's is named after its Agent id until the CEO assigns another. Either an existing absolute directory or the default — the organization's own workspace/ inside the Project directory, which is what most missions want. Offer the default explicitly; if the user names a path, check it exists before you put it in the summary (the server refuses one that does not).penguin config model list # the configured pairs; `*` marks the Project defaultpenguin org employee set <org_id>_ceo --budget <usd>).Before running anything, put all six answers on one screen, in the user's language, and ask for a plain yes:
Organization co_plugin_marketplace (Project: default_project)
Name Plugin Marketplace
Mission Build a PenguinHarness plugin marketplace, promote it into the top three search results, and earn from paid featured slots.
Workspace default (the organization's own workspace/)
Model Project default
CEO budget 100 USD / month — the whole company's capAnything but a clear yes is a correction: change that one line and show the summary again. Do not run the command on a "sure, but …" without settling the "but" first.
One command, exactly the answers, nothing else:
penguin org create --org-id <id> --mission <sentence> \
[--name <display name>] [--language <zh|en>] [--workspace <absolute path>] \
[--provider <provider> --model-id <model id>] [--ceo-budget <usd>]A complete invocation of the summary above:
penguin org create --org-id co_plugin_marketplace \
--name "Plugin Marketplace" \
--mission "Build a PenguinHarness plugin marketplace, promote it into the top three search results, and earn from paid featured slots." \
--ceo-budget 100--org-id is the id to create; unlike every other penguin org command it never comes from PENGUIN_ORG_ID.--name, --workspace and the model pair when the user took the defaults. --ceo-budget defaults to 100, so it may be omitted too — but pass it whenever the user named a number, including 0. Omit --language unless the user asked for a working language other than the mission's own.409 org_exists (the id, or the CEO's Agent id <org_id>_ceo, is taken), 400 with the reason for a bad id, an empty mission, a missing workspace directory or an unconfigured model. Fix the one field and run it again — creation is all-or-nothing and leaves nothing behind when it fails.Creation writes the organization's files, creates the CEO Agent, opens its desk session and starts an initialization run on it. That run has already posted one proposal in the all-hands channel — the CEO's reading of the mission, the streams and first tickets it intends to file, the roles it wants to hire with their budgets, and how it will split the shared workspace — and then stopped, waiting for the board. Tell the user, in their language, exactly that:
@-mentions the CEO wakes its desk;penguin org hire, no penguin org calendar add, no penguin org ticket create from this skill, however obvious the first hire looks — the decision gate is the point: the board approves the plan, then the CEO executes it.© Prism-Shadow, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in plugins/agent-company/skills/company-setup of Prism-Shadow/penguin-harness.
Open the folder on GitHubat commit d56d9ce
Company Setup next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Company Setup this skillPrism-Shadow/penguin-harness | 2.5k | — | ~2.7k | Automated safety check: Pass | Apache-2.0 | |
| Company Brain Company QAtopoteretes/cognee | 32k | — | ~750 | Automated safety check: Notes | Apache-2.0 | |
| Company Creatorpaperclipai/paperclip | 99k | — | ~2.9k | Automated safety check: Pass | MIT | |
| Agent Collective Intelligence Coordinatorruvnet/ruflo | 74k | 2 repos | ~1k | Automated safety check: Pass | MIT | |
| Collection Digestoutline/outline | 41k | — | ~498 | Automated safety check: Pass | Custom licence | |
| Company Brainifygarrytan/gbrain | 31k | — | ~9k | Automated safety check: Pass | MIT |
topoteretes/cognee
Build one company memory from a SQL database, a support ticket export and a folder of documents, linked into one graph by cognee, then answer questions that need several of those sources together.
paperclipai/paperclip
Create agent company packages that conform to agentcompanies/v1.
ruvnet/ruflo
Agent skill for collective-intelligence-coordinator - invoke with $agent-collective-intelligence-coordinator
outline/outline
Summarize what changed in an Outline collection since a date; use when the user asks what is new, what was updated, or wants a digest of recent documents.
garrytan/gbrain
Extract a sanitized shared team/company brain from a personal brain.
alirezarezvani/claude-skills
The meta-framework for how a company runs — the connective tissue between all C-suite roles.
Prism-Shadow/penguin-harness
Make a reply easier to read and act on with rich blocks inside ordinary Markdown — a choice the user picks from, a form that collects several answers, a procedure as steps with warnings in place, a…
Prism-Shadow/penguin-harness
A skill your agent uses when developing PenguinHarness itself — changing packages/{core,server,web,cli,desktop,landing,docs,skills}, the built-in model catalog, the installers or the release…
Prism-Shadow/penguin-harness
Create and edit Bento presentations — self-contained .bento.html decks whose document is JSON.
Prism-Shadow/penguin-harness
A skill your agent uses when standing PenguinHarness up to try a change by hand — launching the Web App, the desktop shell, the landing page, the docs site or the component gallery to click through…
Prism-Shadow/penguin-harness
A skill your agent uses when changing the PenguinHarness Web App (packages/web) or the shared UI package — adding or restyling any UI, picking a status colour, adding an icon, laying out a row or a…
Prism-Shadow/penguin-harness
Drive the PenguinHarness agent browser — the desktop app's built-in browser or the user's own Chrome — from the shell with penguin browser: open pages, read them as simplified HTML or text, act with…
Create a company-mode organization together with the user — collect its id, name, mission, shared workspace, model and CEO budget one question at a time, confirm the whole thing in one summary, then…. Company Setup is an agent skill from Prism-Shadow/penguin-harness. Create a company-mode organization together with the user — collect its id, name, mission, shared workspace, model and CEO budget one question at a time, confirm the whole thing in one summary, then run penguin org create and hand the user over to company mode.
Run `npx skills add Prism-Shadow/penguin-harness --skill company-setup -a claude-code`. Or copy the skill folder (plugins/agent-company/skills/company-setup in Prism-Shadow/penguin-harness) into .claude/skills/company-setup in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Prism-Shadow/penguin-harness --skill company-setup -a codex`. Or copy the skill folder (plugins/agent-company/skills/company-setup in Prism-Shadow/penguin-harness) into .agents/skills/company-setup in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Prism-Shadow/penguin-harness --skill company-setup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/company-setup, .gemini/skills/company-setup, .github/skills/company-setup and .opencode/skills/company-setup in your project.
Going by SKILL.md and its folder, Company Setup needs credentials named PENGUIN_API_TOKEN. Our summary lists: A credential in PENGUIN_API_TOKEN.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Company Setup is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Company Setup: Company Brain Company QA (topoteretes/cognee, 32k stars), Company Creator (paperclipai/paperclip, 99k stars), Agent Collective Intelligence Coordinator (ruvnet/ruflo, 74k stars) and Collection Digest (outline/outline, 41k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Prism-Shadow (a GitHub organization) maintains it in Prism-Shadow/penguin-harness, which has 2,464 GitHub stars. The repository holds 31 skills in this directory. The repository was last updated on October 7, 2026.
Source: Prism-Shadow/penguin-harness on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.