Agent skills for Flow, a bioinformatics platform
built by Goodwright. This repository is a
plugin marketplace; today it ships one plugin, flow-ai, which
lets an AI agent query Flow's REST API on your behalf.
flow-ai is a read-only skill. With it, an agent can answer questions
like:
- "What pipelines are available on Flow?"
- "How many samples do I own?"
- "What was the last successful execution of the RNA-Seq pipeline on sample X, and what data files did it produce?"
- "Download the FASTQ for data file 67890."
See plugins/flow-ai/skills/flow-ai/SKILL.md
for the current capabilities.
The skill works unauthenticated, but most resources on Flow are private, so an authenticated key dramatically broadens what you can ask about.
-
Sign in to Flow at https://app.flow.bio.
-
Open https://app.flow.bio/settings and go to the Account Management tab.
-
In the API Keys section, choose:
- Key purpose: AI Agent (recommended for use with this skill).
- Lifetime: how long the key should remain valid.
-
Click create, then copy the key immediately — it's shown only once.
-
Save it to
~/.config/flow/api-tokenwith restrictive permissions:mkdir -p ~/.config/flow umask 077 pbpaste > ~/.config/flow/api-token # or paste manually chmod 600 ~/.config/flow/api-token
The skill checks for this file on every invocation. When present, it
attaches Authorization: Bearer … to every request. When absent, it
proceeds unauthenticated. The skill never prints the token — it's
referenced only via $(< ~/.config/flow/api-token) inside a curl -H
flag.
This repo is a Claude Code plugin marketplace. Inside Claude Code:
/plugin marketplace add goodwright/flow-skills
/plugin install flow-ai@flow-skills
To pick up new releases later, run /plugin marketplace update.
The skill itself is just a directory of Markdown files following
Anthropic's Agent Skill format.
Any agent harness that loads skills from a directory can use it
directly. Clone the repo and point your harness at
plugins/flow-ai/skills/flow-ai/:
git clone https://github.com/goodwright/flow-skills.git
# Then either symlink or copy plugins/flow-ai/skills/flow-ai/ into wherever
# your agent loads skills from. For example, for Claude Code's standalone
# mode:
mkdir -p ~/.claude/skills
ln -s "$(pwd)/flow-skills/plugins/flow-ai/skills/flow-ai" ~/.claude/skills/flow-aiFor agents that consume SKILL.md directly (Codex, Gemini CLI,
Copilot CLI, etc.), see your harness's documentation for the skill
load path. The skill's contract is the YAML frontmatter in SKILL.md
plus the supporting files it references — no harness-specific glue.
The canonical version lives in
plugins/flow-ai/.claude-plugin/plugin.json.
The User-Agent: flow-ai/<version> string in SKILL.md is kept in
lockstep so Flow's backend can attribute traffic to a specific release.
On each release, bump:
plugins/flow-ai/.claude-plugin/plugin.json#version- The
User-Agentstrings inSKILL.mdandexamples.md CHANGELOG.md
A pre-release sanity check:
grep -rn "flow-ai/" plugins/flow-ai/skills/flow-ai/ | grep -v 0.2.0…should return nothing once everything is in lockstep.
Issues and PRs welcome at https://github.com/goodwright/flow-skills. For changes to the skill itself, also update an eval (or add a new one) that demonstrates the new behaviour.
MIT — © 2026 Goodwright.