From breeze
Full Breeze project management: show, list, switch (use), create, auth, status, and full bootstrap (setup). Use for: "which project am I on", "list projects", "switch project", "set project", "create project", mid-session project changes, MCP re-authentication, and first-time workspace bootstrap. This is the canonical home for all project-management operations. The legacy `/breeze:setup-project` is a backward-compatible alias for `/breeze:project setup`.
How this skill is triggered — by the user, by Claude, or both
Slash command
/breeze:projectThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Most modes here require an authenticated Breeze MCP session. The
Most modes here require an authenticated Breeze MCP session. The
auth and setup modes handle the auth handshake themselves; all
other modes (show, list, use, create, status) assume an
active session and surface a clear error pointing at
/breeze:project auth if they hit a 401.
Parse $ARGUMENTS and dispatch:
$ARGUMENTS shape | Mode |
|---|---|
| empty / whitespace | show — print active project + summary |
list (case-insensitive) | list — print all accessible projects |
use <value> | switch — resolve <value> and update .breeze.json |
auth (case-insensitive) | auth — MCP authentication handshake |
create <name> [--description "..."] | create — create a new project and link |
status (case-insensitive) | status — full metadata report (alias of show) |
setup (case-insensitive) | setup — full bootstrap (auth + link/create + status) |
| anything else | print the usage hint and stop |
Usage hint (for unknown args):
Usage:
/breeze:project show currently active project
/breeze:project list list all accessible projects
/breeze:project use <name|uuid> switch and persist
/breeze:project create <name> [--desc "..."] create a new project and link
/breeze:project auth re-authenticate the MCP session
/breeze:project status full metadata report on active project
/breeze:project setup full bootstrap (auth + link + status)
If a request requires data from a project other than the one
currently linked in .breeze.json — e.g., comparing V1 and V2 in one
analysis, or cross-referencing a sister project — pass the target
uuid directly to each MCP tool call. Do NOT silently mutate
.breeze.json to switch projects mid-invocation. Only the use,
create, and setup modes of this skill (when the user explicitly
invokes them) may modify .breeze.json.
Read .breeze.json. If missing or projectUuid absent, respond:
No project currently linked. Options:
- /breeze:project setup — initial link + MCP auth
- /breeze:project list — see what's available
- /breeze:project use <X> — link to an existing project
Then stop.
Call Call_Get_Project_Details_ with the existing projectUuid.
Render:
Active project: <name> (<uuid>)
Status: <status>
Version: <version>
Author: <author.firstName> <author.lastName> <author.email>
Description: <metadata.description or "—">
Short hint at the bottom:
Switch with: /breeze:project use <name-or-uuid>
See all: /breeze:project list
If Call_Get_Project_Details_ returns empty / 404, treat the previously
linked project as gone: tell the user the link is stale and offer
/breeze:project list + /breeze:project use <name> (or
/breeze:project setup to start fresh).
Call Call_List_Project_ (limit high enough to capture all — start
with 50, paginate if total exceeds).
Read .breeze.json to get the current projectUuid (if any).
Render as a monospace table:
UUID Name Status Active
───────────────────────────────────── ─────────────── ────── ──────
4f803786-60d9-4f66-b719-c51a84a7df40 Lead Manager V1 active ←
69944bfe-366d-4bc7-8586-4e0b04901e24 Lead Manager V2 active
bf6cfa91-9495-41ce-93d7-36d45ddeaae1 ETL & Harvestor active
Mark the row whose UUID matches .breeze.json's projectUuid with
an ← arrow in the Active column. If .breeze.json is missing or
empty, omit the Active column entirely and add a note: "No project
currently linked."
Footer:
Switch with: /breeze:project use <name-or-uuid>
use <value>)Extract <value> from $ARGUMENTS (everything after use).
Call Call_List_Project_ and resolve <value>:
.breeze.json.Read .breeze.json (may not exist).
projectUuid.{"projectUuid": "<uuid>"}.Render confirmation:
Switched to: <name> (<uuid>)
Previously: <previous name or "(none)">
.breeze.json updated.
Footer:
Next: any /breeze:* skill will now use this project.
For a one-shot override that does NOT touch .breeze.json, use
--project <name> on any individual skill invocation.
The Breeze MCP server handles authentication via a browser handshake; no API key is stored locally.
Attempt a lightweight MCP call (e.g. Call_List_Project_ with
limit: 1) to test the current session.
If it succeeds → respond:
MCP session is already authenticated.
Then stop.
If it fails with an auth error, run the handshake:
a. Call mcp__breeze-mcp__authenticate to start the flow. The
tool returns an authentication URL.
b. Share the URL with the user and ask them to complete sign-in in their browser.
c. Once they confirm completion, call
mcp__breeze-mcp__complete_authentication to finalize the
session.
d. Retry the lightweight call to verify the session is now live.
e. Render:
MCP session re-authenticated.
Then stop.
If verification still fails after this flow, ask the user to retry
/breeze:project auth or check their network / SSO.
create <name> [--description "..."])Parse <name> and optional --description "..." from
$ARGUMENTS (everything after create).
Require <name> to be non-empty. If absent, stop with the usage
hint.
Confirm with the user before creating:
Create new project '<name>' with description '<desc-or-(none)>'?
(yes/no)
On no, stop without creating.
Call Call_Create_Project_ with the name and description. Capture
the returned projectUuid.
Read .breeze.json (may not exist).
projectUuid
to the new project's UUID.{"projectUuid": "<uuid>"}.Render confirmation:
Created project: <name> (<uuid>)
.breeze.json updated.
Footer:
Next: any /breeze:* skill will now use this project.
Alias of show (no args). Same metadata report. Call this when you
want to be explicit about asking for project status rather than
relying on the no-args default.
Full workspace bootstrap. Performs auth → link/create → status in one
flow. This is the canonical home for what was previously
/breeze:setup-project (which is now a backward-compatible alias for
this mode).
Auth check. Run the steps in Mode: auth. If auth fails permanently, stop.
Read .breeze.json and remember whether projectUuid was
already present.
No existing projectUuid (first-time link) — ask:
Would you like to:
1. Select an existing project
2. Create a new project
Existing projectUuid (confirm / switch) —
a. Call Call_Get_Project_Details_ with the existing UUID to
identify the current project.
b. Ask:
You're currently linked to **{currentProject.name}**
(`{currentProject.uuid}`). Would you like to:
1. Keep this project (just show its status)
2. Switch to a different existing project
3. Create a new project
c. Route on the answer:
projectUuid in .breeze.json.projectUuid in .breeze.json.If Call_Get_Project_Details_ returns empty / 404 for the
existing UUID, treat the link as gone and fall through to the
first-time prompt in step 3.
Sub-flows:
Select existing: Call Call_List_Project_, display the
project list (name + UUID), user selects one, save its UUID to
.breeze.json (preserving other keys).
Create new: Ask for project name and optional description.
Call Call_Create_Project_. Save the returned projectUuid to
.breeze.json (preserving other keys).
Status report (same as Mode: show / Mode: status). Render the metadata report for the now-linked project.
Next-step guidance:
Your project is linked. Next:
- /breeze:project view / list / switch project
- /breeze:search <question> explore the graph
- /breeze:impact-analysis cross-layer blast radius
- /breeze:generate-spec export a functional specification
Each analysis skill also accepts --project <name|uuid> for a
one-shot, non-persistent override.
.breeze.json: use, create, setup (when
it ends up linking or creating). All other modes are pure reads.auth, setup. All other modes assume
an active session and surface a clear error pointing at
/breeze:project auth if they hit 401./breeze:search.--project overrides on analysis skills are
outside this skill's scope. This skill manages the persisted
active project via .breeze.json. Per-invocation overrides belong
to search, impact-analysis, generate-spec..breeze.json outside use / create / setup.
For cross-project queries within an invocation, pass uuid
directly to MCP tool calls instead of switching the active project.setup and use: use setup for
first-time link or when you suspect auth might be broken; use use
for a fast mid-session switch on an already-authenticated session./breeze:setup-project continues to
work as a thin alias for /breeze:project setup. Behavior is
identical.Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub accionlabs/breezeai-hubexo-plugin