Agentic primitives repository. Provides reusable agents, instructions, prompts, and skills for AI-assisted development workflows, managed via the Microsoft Agentic Package Manager (APM).
New to agents? Read our intro before diving in
The .apm/ directory contains the following primitive types:
| Type | Description |
|---|---|
agents/ |
Custom GitHub Copilot agents for orchestrating development workflows |
instructions/ |
Coding guidelines applied automatically to matching file types |
prompts/ |
Reusable prompt templates |
skills/ |
Reusable skill definitions |
Requires Python 3.13+ and uv.
just devThis creates a virtual environment, installs all dependencies, and drops you into an activated shell.
Install a conductor agent:
# For Nextflow projects
apm install FrancisCrickInstitute/lyra/agents/nextflow/conductor.agent.md
# For Python projects
apm install FrancisCrickInstitute/lyra/agents/python/python-focused-conductor.agent.mdOr install a curated bundle as a single dependency path:
# Nextflow bundle (conductor + subagents/skills)
apm install FrancisCrickInstitute/lyra/packages/nextflow
apm install
apm compile
# Python bundle (conductor + subagents)
apm install FrancisCrickInstitute/lyra/packages/python
apm install
apm compileThe Python bundle also installs a GitHub Copilot post-edit hook that runs ruff check
against changed Python files and pytest for the project after Python code changes.
The hook will use .venv executables when present, otherwise it falls back to uv run
or tools available on PATH. The hook is packaged separately under hooks/ and
included in the bundle via packages/python/apm.yml.
Use a recent APM release if you want to consume all primitives in this repository:
- Hooks require APM
>= 0.7.4. .github/instructionssupport requires APM>= 0.7.5.
Or declare in your project's apm.yml:
name: my-project
version: 0.0.0
dependencies:
apm:
- FrancisCrickInstitute/lyra/agents/nextflow/conductor.agent.md
- FrancisCrickInstitute/lyra/agents/nextflow/nextflow-subagents/code-review-subagent.agent.md
- FrancisCrickInstitute/lyra/agents/nextflow/nextflow-subagents/planning-subagent.agent.mdThen run:
apm install- APM supports installing
owner/repo/pathpackages (subdirectory/virtual packages). - APM does not support wildcard folder installs (for example, "install all files under this folder" via glob).
- If you need a fixed set of primitives from this repo, prefer bundle paths like
FrancisCrickInstitute/lyra/packages/nextfloworFrancisCrickInstitute/lyra/packages/python.
You can also install specific components:
# Just a skill
apm install FrancisCrickInstitute/lyra/skills/nextflow-diagram-creation
# Specific subagent
apm install FrancisCrickInstitute/lyra/agents/nextflow/nextflow-subagents/planning-subagent.agent.md
apm install FrancisCrickInstitute/lyra/agents/python/python-subagents/python-planner-subagent.agent.mdAPM uses the GitHub API, which rate-limits unauthenticated requests to 60/hour. If you hit this limit, installs will fail with "not accessible or doesn't exist" even though the file is public.
Fix: set GITHUB_APM_PAT using your existing gh CLI token:
export GITHUB_APM_PAT=$(gh auth token)To make this permanent, add it to your shell profile (~/.zshrc or ~/.bashrc):
echo 'export GITHUB_APM_PAT=$(gh auth token)' >> ~/.zshrcThis raises the rate limit to 5,000 requests/hour.