agent-framework-choice
Use when choosing or implementing agent runtimes: LangGraph workflows, Pi / pi-ai / embedded Pi harness agents, thin provider SDK loops, model API wire…
Skill by AVIDS2
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/avids2-agent-framework-choice
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/agent-framework-choice
What's inside
- Skill name
agent-framework-choice- Description
- Use when choosing or implementing agent runtimes: LangGraph workflows, Pi / pi-ai / embedded Pi harness agents, thin provider SDK loops, model API wire protocol (Chat Completions vs Responses vs Messages), or "which agent framework" decisions. Scene-based defaults — not a mandate to use Pi or LangGraph. Prefer Chat Completions for multi-model. Prefer docs lookup (Context7/official). Do NOT use for ordinary CRUD with no agent runtime.
- License
- MIT
- Instructions
- 107 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Agent Framework Choice
**Advisory decision aid.** Pick what fits the product surface. Do not force Pi SDK or LangGraph into every "agent" mention.
## First: name the scene
| Scene | Typical product | Runtime bias |
|-------|-----------------|--------------|
| **A. Web FE/BE / SaaS API** | Next/Vue + API, multi-user cloud app | Server-side agent code: thin SDK, or **LangGraph** if you need durable workflow/HITL graphs. **Pi SDK is usually a poor default** here. |
| **B. Local harness agent** | Electron/desktop agent, repo workspace agent, computer-use style | **Pi ecosystem**: Pi SDK, **pi-ai**, or embed/integrate a Pi agent — choose per docs and packaging needs |
| **C. Explicit business workflow graph** | Approvals, bid pipelines, multi-day stateful processes | **LangGraph** (+ langgraph skills/docs) |
| **D. Minimal tool chat** | Few tools, little state | Provider official SDK loop first — no heavy framework |
If unsure: state 2 options with scene fit, recommend one, let the user pick for irreversible choices.
## Decision tree (soft)
```text
What is shipping?
Web FE/BE product without a local agent shell
→ do NOT default to Pi SDK
→ need durable graph / HITL / branching business process? LangGraph
→ else thin server-side LLM + tools SDK
Local / desktop / workspace harness agent
→ Pi SDK or pi-ai or embedded Pi agent (read current docs)
→ not LangGraph unless you truly need a durable business graph
Pure multi-step workflow product (cloud)
→ LangGraph first
Tiny prototype
→ thinnest thing that works (ponytail)
```
## LangGraph path
When scene C (or A with real workflow needs):
1. Prefer langgraph-docs / langgraph-agent-patterns when available
2. Else Context7 / official docs before coding
3. Model state, nodes, edges, persistence, HITL explicitly
4. Do not load LangGraph skills for non-LangGraph work
## Pi / local harness path
When scene B:
1. Read **current** Pi / pi-ai docs (Context7 or official) — APIs change
2. Choose packaging deliberately:
- **Pi SDK** — when you need the SDK integration model the docs describe
- **pi-ai** — when that package matches the stack
- **Embed / shell out to Pi agent** — when product should host or wrap the agent rather than re-implement the loop
3. Do not cargo-cult LangGraph graphs onto Pi
4. Do **not** recommend this path as default for ordinary web FE/BE
## Thin SDK path
When scene D or early spike: official OpenAI/Anthropic/etc. SDK + tools. Promote to LangGraph/Pi only when pain appears (state, permissions, multi-agent, long sessions).
## Model API protocol (wire format) — default preference
When **building** agent products or provider adapters (not when merely using Claude Code/Codex as the IDE):
| Protocol | Prefer? | Notes |
|----------|---------|--------|
| **OpenAI Chat Completions** `POST /v1/chat/completions` | **Default first choice** for multi-model / gateway / local / Pi-compat | Widest support; Pi uses `openai-completions` for this; Ollama, vLLM, OpenRouter, most mid-proxies speak it |
| OpenAI **Responses** `/v1/responses` | When targeting OpenAI-native agent features and ecosystem is OK being narrower | Codex may use this as a client; don't force it as the only server protocol you implement |
| Anthropic **Messages** `/v1/messages` | When product is Claude-native | Fine as a second path or dedicated provider |
| Legacy `/v1/completions` | Avoid for new work | Obsolete for chat/tools agents |
**Rules of thumb (advisory):**
1. New agent backends / multi-provider support → **implement and test Chat Completions first**.
2. Pi / pi-ai custom providers → prefer `api: "openai-completions"` unless docs say otherwise for that host.
3. Adding Responses or Messages is OK as **extra** adapters after Completions works — not instead of it, unless the product is single-vendor by design.
4. Don't confuse **tool/MCP protocol** (how agents call tools) with **model wire protocol** (how you call LLMs). This section is only the latter.
## Docs habit (strong suggestion, not a jail)
Before writing non-trivial framework code, do at least one fresh docs lookup this session for the APIs you will call. If you skip (spike / user said go), note that.
## Output before coding
```markdown
## Scene (A/B/C/D)
## Runtime choice
## Model API protocol (default: Chat Completions unless single-vendor reason)
## Why this fits
## Why not the others (esp. if rejecting Pi or LangGraph)
## Docs consulted
## Risks if wrong
```
## Anti-patterns
- "Harness agent → must Pi SDK" on a cloud web app
- "Agent → must LangGraph" for a 2-tool chatbot
- Mixing Pi + LangGraph in P0 without a boundary
- Coding from memory on fast-moving agent APIs
- Building only Responses-API support when the product needs multi-model / OpenAI-compat gateways
- Using legacy `/v1/completions` for new tool-calling agents
## Related
- `stack-defaults`, `product-bootstrap`, `multi-agent-deliberation`From AVIDS2/avid-skill, MIT.
More from AVIDS2/avid-skill
- 0.502score
using-avid
AVIDS2
Use when starting product, feature, build, stack, research, agent-framework, or implementation work.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
multi-agent-deliberation
AVIDS2
Use for high-stakes decisions: architecture forks, build-vs-buy, competitive response, major refactors, or when the user wants multi-agent debate.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
product-bootstrap
AVIDS2
Prefer before greenfield products, new verticals, or "做个X/从零做" work.
SkillCFreshness: C★ 1Claude Code +9 - 0.493score
stack-defaults
AVIDS2
Use when choosing or confirming tech stack for a product or feature: frontend framework, database, auth, email, payments, hosting, search, or agent runtime.
SkillCFreshness: C★ 1Claude Code +9 - 0.493score
knowledge-architecture
AVIDS2
Use when designing knowledge bases, RAG, wiki, knowledge graphs, memory for agents, or "how should we store docs for humans vs agents".
SkillCFreshness: C★ 1Claude Code +9 - 0.489score
install-dont-reinvent
AVIDS2
Prefer when a required CLI, library, MCP, or skill is missing.
SkillCFreshness: C★ 1Claude Code +9 - 0.489score
research-before-build
AVIDS2
Prefer before self-implementing a non-trivial library, service, or subsystem.
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jul 23, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/AVIDS2/avid-skill
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from AVIDS2
- 0.761score

Memorix
AVIDS2
Local-first project memory with legacy MCP and 2026 discovery compatibility.
ConnectorAFreshness: ALocal★ 857Claude Code +5 - 0.502score
using-avid
AVIDS2
Use when starting product, feature, build, stack, research, agent-framework, or implementation work.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
multi-agent-deliberation
AVIDS2
Use for high-stakes decisions: architecture forks, build-vs-buy, competitive response, major refactors, or when the user wants multi-agent debate.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
product-bootstrap
AVIDS2
Prefer before greenfield products, new verticals, or "做个X/从零做" work.
SkillCFreshness: C★ 1Claude Code +9 - 0.493score
knowledge-architecture
AVIDS2
Use when designing knowledge bases, RAG, wiki, knowledge graphs, memory for agents, or "how should we store docs for humans vs agents".
SkillCFreshness: C★ 1Claude Code +9 - 0.493score
stack-defaults
AVIDS2
Use when choosing or confirming tech stack for a product or feature: frontend framework, database, auth, email, payments, hosting, search, or agent runtime.
SkillCFreshness: C★ 1Claude Code +9
Cite this page
agent-framework-choice skill. Agent Mart. https://agentmart.dev/skills/avids2-agent-framework-choice (last updated 2026-10-24)