Agent skill

Nagent

by davidondrej in davidondrej/skills

Launch a new bb worker thread with the right project, model, worktree, and task brief.

MITAuto-check: notesAgent Workflows

Install Nagent

skills CLI
$ npx skills add davidondrej/skills --skill nagent -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install davidondrej/skills nagent --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/davidondrej/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/agent-orchestration/nagent .claude/skills/nagent && rm -rf skills-src

Use ~/.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/

Facts

Skill name
nagent
GitHub stars
4.1k
Token cost
~1.7k tokens
SKILL.md length
812 words
Files
3 (incl. scripts, references)
Skills in repo
51
Repo updated
First seen
Licence
MIT

At a glance

Launch a new bb worker thread with the right project, model, worktree, and task brief.

  • Launching a bb session
  • SKILL.md covers Defaults, Look Up the Target, Pi Agent: billing safety and Permission Checks, plus 6 more sections
  • Runs Shell scripts from its folder
  • A standalone bb agent

What it does

Nagent is an agent skill from davidondrej/skills. Launch a new bb worker thread with the right project, model, worktree, and task brief. Use for nagent, launching a bb session, or a standalone bb agent. Covers thread creation; use bb-cli for managing existing threads.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts and reference files (for example `references/providers.md` and `scripts/permission-mode.sh`).

It sits in Agent Workflows, covering Git worktrees. It works with OpenAI. The repository describes itself as: access to david ondrej's personal agent skills. The licence is MIT.

When your agent uses it

  • Launching a bb session
  • A standalone bb agent

Example prompts

  • “/nagent”

Requirements

  • A Bash shell

What it can do on your machine

Read from SKILL.md and the folder at commit ba8e24c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships 1 file in scripts/ (Shell), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Nagent loads about 1.7k tokens when it runs, and up to ~2.1k if it reads all its reference files. Until then it costs about 56 tokens; SKILL.md has 812 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~56
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.1k

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.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:95
    nclude required untracked files such as `.env` through the repo's `.worktreeinclude`; setup may also use `.bb-env-setup.

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); the scripts in this folder are not scanned.

SKILL.md

The full file from davidondrej/skills at commit ba8e24c, republished under its MIT licence (© davidondrej). 812 words, ~1,672 tokens.

Download SKILL.mdSave it as .claude/skills/nagent/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
nagent
description
Launch a new bb worker thread with the right project, model, worktree, and task brief. Use for nagent, launching a bb session, or a standalone bb agent. Covers thread creation; use bb-cli for managing existing threads.

nagent

Read this before bb thread spawn. Use bb-cli for other thread operations.

Defaults

Use Codex gpt-5.6-sol, reasoning high, service tier fast ("GPT 5.6 Sol High Fast"). Use xhigh for larger refactors. The user's explicit choices override these defaults.

For a different requested model, use its catalog defaultReasoningEffort when unspecified, and enable fast only when asked. Do not infer a higher reasoning level from the model name.

Prefer bare bb; "$BB_CLI" is also valid when set.

Look Up the Target

bash
bb project list --json
bb provider list --json
bb provider models <provider-id> --json
  • Project: Match the name and confirm sources[].path is the requested repository. Always pass --project; never hardcode an ID.
  • Provider: Look it up. Common mappings are Cursor CLI → acp-cursor, Codex/ChatGPT subscription → codex, and Claude Code → claude-code. Grok via Cursor is not acp-grok, which is Grok Build.
  • Model: Use the catalog ID. Match both displayName and supportedReasoningEfforts[].description; model IDs, reasoning labels, and service tiers are separate.

For Cursor/Grok or Codex Max naming traps, read provider details. Verify examples against the current catalog; do not guess IDs or substitute a different provider.

Pi Agent: billing safety

--provider pi selects the harness; the full --model provider/model selects the inference and billing route. ChatGPT subscription example:

bash
--provider pi --model openai-codex/gpt-6-astra --reasoning-level xhigh

Query Pi's catalog on the target --machine or --environment. openai-codex uses the ChatGPT subscription; OpenRouter and Vercel AI Gateway bill separately. Never substitute routes without the user's approval; stop if unavailable. After spawning, verify the full model ID and reasoning in the client/turn/requested execution metadata, not just the display name.

Permission Checks

The user's investigation/build workers default to full. A child cannot exceed the parent's permission mode, so verify the parent before requesting it and the child after spawning.

Run the bundled script relative to this skill's directory:

bash
scripts/permission-mode.sh "$BB_THREAD_ID"

For a full worker, this must print full. Otherwise, stop and report that the requested mode is unavailable under the parent's limits. Do not bypass those limits. If the user requests another mode, confirm the provider supports it.

The modes are accept-edits (sandbox, human-reviewed escalations), auto (sandbox, automatic review), and full (no sandbox). A read-only brief must forbid writes regardless of mode. For Cursor permission issues, use the provider-details reference.

Spawn

Use the resolved IDs and chosen settings. This example shows the default worker's reasoning, tier, and permissions; replace them when the user requests different settings.

bash
bb thread spawn --json \
  --project <project-id> \
  --new-environment worktree \
  --provider <provider-id> \
  --model <model-id> \
  --reasoning-level high \
  --service-tier fast \
  --permission-mode full \
  --title "Short title" \
  --prompt "$(cat <<'EOF'
Objective: ...
Constraints: ...
Skills and files: ...
Deliverable: ...
Validation: ...
Report back: ...
EOF
)"

Always include --json, --title, and a complete prompt. The quoted heredoc preserves quotes in the brief.

Parent and Sidebar Placement

  • Omit parent flags for a standalone, top-level thread: "not as your own subagent".
  • Use --parent-self when this thread coordinates the worker or the job is its subtask.
  • Use --parent-thread <id> to nest under another thread. Never combine the two parent flags.

Do not nest unrelated one-off work by default.

Worktree

Use --new-environment worktree for a bb-managed worktree. Do not create one manually unless the user asks.

  • Worktrees start with tracked files. Include required untracked files such as .env through the repo's .worktreeinclude; setup may also use .bb-env-setup.sh. See bb guide environments.
  • Omit --base-branch for the project default; specify it only when needed.
  • Do not combine --machine with an existing --environment ID.
  • A null environmentId in the spawn response can mean the worktree is still being created.
Show full SKILL.md (291 more words)Show less

Task Brief

Preserve the user's scope

  • Write a focused assignment preserving intent, constraints, and corrections. Never invent requirements, deliverables, permissions, or approval.
  • Model, machine, repository, and thread placement guide the launcher. Give each worker only its task and necessary context.
  • Before sending, remove copied conversation, launcher instructions, and unrelated assignments. Never prepend the full user prompt; quote exact wording only when explicitly requested.

The worker does not see this conversation. State the objective, constraints, relevant skills/files, deliverable, validation, and expected report. Name the skills it must read rather than assuming your context carries over.

For read-only jobs, explicitly say no code changes, no Git writes, no database writes. For implementation, specify the allowed scope and any Git or production restrictions. Ask for a concise report, including changed files and validation when relevant.

Verify and Report

bash
scripts/permission-mode.sh <child-thread-id>

Confirm the child received the requested mode. If it differs or is unknown, report the mismatch rather than claiming a successful setup.

Report the thread ID, title, project, provider/model/reasoning/tier, worktree yes/no, and read-only versus implementation scope. Then stop. Do not dump the prompt, open/focus the thread, poll, wait, or read work logs unless the user asks.

Blocked Workers and Lifecycle

If bb reports a blocker, inspect it with bb thread interactions list <id> --json. Resolve routine input within the brief, and approve an action with bb thread interactions approve <interactionId> <id> only when it is authorized and safe. Ask the user about destructive actions, production access, unclear decisions, or work outside the brief. Do not monitor just to look for blockers.

Use bb-cli for lifecycle commands. Archive only when the user asks, then stop the thread to release its runtime. Never delete without an explicit request, and do not use hiding as a substitute for archiving.

© davidondrej, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (scripts, references) in skills/agent-orchestration/nagent of davidondrej/skills.

  • SKILL.md
  • references/providers.md
  • scripts/permission-mode.sh

Open the folder on GitHubat commit ba8e24c

Compare with similar skills

Nagent 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.

Nagent compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Nagent this skilldavidondrej/skills4.1k—~1.7kAutomated safety check: NotesMIT
Codex CLIkortix-ai/suna20k—~1.6kAutomated safety check: PassCustom licence
DevSpace Manual QA SetupWaishnav/devspace5.2k—~440Automated safety check: PassMIT
Release Candidate Prepopenai/openai-agents-python30k—~4.9kAutomated safety check: PassMIT
Live Extension UI Automationqixing-jk/all-api-hub4.9k—~2.6kAutomated safety check: PassAGPL-3.0
Implementation Kickoffopenai/openai-agents-python30k—~2.9kAutomated safety check: PassMIT

Similar skills

  • Codex CLI

    kortix-ai/suna

    Drive OpenAI's Codex CLI (codex exec) as a non-interactive coding sub-agent from inside Claude Code.

    20k GitHub stars~1.6k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • DevSpace Manual QA Setup

    Waishnav/devspace

    Prepares the current DevSpace checkout or worktree for isolated local manual QA, covering QA state seeding, UI asset builds and snapshot resets.

    5.2k GitHub stars~440 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Release Candidate Prep

    openai/openai-agents-python

    Official

    Prepare a local Python SDK release candidate in a dedicated worktree.

    30k GitHub stars~4.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Live Extension UI Automation

    qixing-jk/all-api-hub

    Control, debug, and test the live dev browser extension UI (Options, Popup, Sidepanel) via CDP with persistent login states and accounts.

    4.9k GitHub stars~2.6k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Implementation Kickoff

    openai/openai-agents-python

    Official

    Carry implementation through an isolated worktree and local handoff.

    30k GitHub stars~2.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Omegacode

    SawyerHood/omegacode

    Author and run multi-agent workflows with the omegacode CLI — JavaScript files that orchestrate Codex (gpt-5.x) and Claude Code agents deterministically via agent()/parallel()/pipeline()/phase().

    137 GitHub stars~6.4k tokensUpdated 3 mo ago
    AI & LLM EngineeringAuto-check passed

More from davidondrej/skills

All 51 skills in this repo
  • Browser Harness

    davidondrej/skills

    Direct browser control via CDP. An agent skill from davidondrej/skills.

    4.1k GitHub starsUsed in 2 repos~3k tokens
    Auto-check passed
  • Persistent Localhost

    davidondrej/skills

    Manage persistent dev servers, APIs, and other local processes on a port using macOS LaunchAgents.

    4.1k GitHub stars~618 tokensUpdated yesterday
    Auto-check passed
  • Reset Cursor Acp

    davidondrej/skills

    Reset a stuck Cursor ACP thread in <chat-system and reload its configuration.

    4.1k GitHub stars~728 tokensUpdated yesterday
    Auto-check passed
  • Anti Sleep

    davidondrej/skills

    Keep a Mac awake for a set duration or while a process runs.

    4.1k GitHub stars~640 tokensUpdated yesterday
    Auto-check: warnings
  • Bb CLI

    davidondrej/skills

    Use this when controlling bb. An agent skill from davidondrej/skills.

    4.1k GitHub stars~823 tokensUpdated yesterday
    Auto-check passed
  • Boat

    davidondrej/skills

    Manage Boat (boat.dev, formerly Box by Ascii) cloud sandboxes via API, CLI, and SSH.

    4.1k GitHub stars~2k tokensUpdated yesterday
    Auto-check: notes

Works with

Questions about Nagent

What does Nagent do?

Launch a new bb worker thread with the right project, model, worktree, and task brief. Nagent is an agent skill from davidondrej/skills. Launch a new bb worker thread with the right project, model, worktree, and task brief.

When should I use Nagent?

Nagent fits situations like: launching a bb session; A standalone bb agent.

How do I install Nagent in Claude Code?

Run `npx skills add davidondrej/skills --skill nagent -a claude-code`. Or copy the skill folder (skills/agent-orchestration/nagent in davidondrej/skills) into .claude/skills/nagent in your project. Claude Code loads it when a task matches its description.

How do I install Nagent in Codex?

Run `npx skills add davidondrej/skills --skill nagent -a codex`. Or copy the skill folder (skills/agent-orchestration/nagent in davidondrej/skills) into .agents/skills/nagent in your project. Codex loads it when a task matches its description.

Can I use Nagent in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davidondrej/skills --skill nagent -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nagent, .gemini/skills/nagent, .github/skills/nagent and .opencode/skills/nagent in your project.

What does Nagent need to run?

Going by SKILL.md and its folder, Nagent needs a shell for the scripts in its folder. Our summary lists: A Bash shell.

Does Nagent access the network?

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.

Is Nagent safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Nagent use?

Nagent is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Nagent use?

About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 382 tokens, read only when the agent opens those files.

What are the alternatives to Nagent?

Skills that share tags, products or a category with Nagent: Codex CLI (kortix-ai/suna, 20k stars), DevSpace Manual QA Setup (Waishnav/devspace, 5.2k stars), Release Candidate Prep (openai/openai-agents-python, 30k stars) and Live Extension UI Automation (qixing-jk/all-api-hub, 4.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Nagent?

davidondrej (a GitHub user) maintains it in davidondrej/skills, which has 4,107 GitHub stars. The repository holds 51 skills in this directory. The repository was last updated on October 7, 2026.

Source: davidondrej/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.