Updated docs for init / create commands#941
Conversation
|
🔍 Mintlify preview for this branch: https://daily-mb-init-as-start-point-docs.mintlify.app |
3518f62 to
017beb0
Compare
There was a problem hiding this comment.
If create is really only for bots to invoke after an init (if the user goes the coding agent route) or for init to invoke directly (if the user goes the wizard route), why not just treat it as "private" and not even discuss it? That'll help with the onboarding confusion.
There was a problem hiding this comment.
In fact, we should also remove it from the output of pipecat --help. It currently still looks like the main way to get started, to anyone looking at that output.
There was a problem hiding this comment.
(Or find some way of burying it, maybe marking it as deprecated or something)
There was a problem hiding this comment.
I made a change to the CLI to hide the create command. That means that the command is still usable and you can get help info, but it doesn't appear in pipecat --help. You can still see how to use it by running pipecat create --help, which the agents will need:
pipecat-ai/pipecat#4867
There was a problem hiding this comment.
Along with this change, I've removed the create reference. Not sure if this is a good idea since we're hiding info from the agent about how headless scaffolding works...
| --- | ||
| title: init | ||
| description: "Make a project agent-ready by writing the Pipecat coding-agent guide" | ||
| description: "The starting point for building a Pipecat app: make a project agent-ready, then build with a coding agent or scaffold a runnable bot" |
There was a problem hiding this comment.
This still implies that it takes an existing project and makes it agent-ready. That's not really what it does, right?
There was a problem hiding this comment.
This whole description, I think, should be rewritten to present a simpler mental model for the user; it's a bit wordy and confused-sounding.
Maybe something along the lines of:
Initialize a new Pipecat app.
Gives you a choice about how to scaffold your project:
- Using a coding agent like Claude Code or Codex
- Using an interactive wizard
No matter how you choose to scaffold your app, coding agent files—AGENTS.md and CLAUDE.md—are provided to help your favorite coding agent work well with Pipecat.
(Exact wording TBD, but hopefully a good illustration of how to reframe in a simple compact way)
There was a problem hiding this comment.
Oh, and also:
This command can be run again to update the coding agent files with the latest and greatest Pipecat guidance.
There was a problem hiding this comment.
Or, per https://github.com/pipecat-ai/docs/pull/941/changes#r3462691884:
This command can be run again with `--update-coding-agents` to update the coding agent files with the latest and greatest Pipecat guidance.
There was a problem hiding this comment.
Simplified the intro.
| @@ -29,7 +26,9 @@ pipecat init [TARGET_DIR] [OPTIONS] | |||
| <ParamField path="TARGET_DIR" type="string"> | |||
| Directory to make agent-ready. `pipecat init my-bot` targets `./my-bot`; | |||
There was a problem hiding this comment.
I think we should avoid using the terminology "make agent-ready" wherever it's still being used. init initializes your Pipecat project.
There was a problem hiding this comment.
Removed mentions.
| </Note> | ||
| After writing those, **interactive `pipecat init` asks how you want to build**: | ||
|
|
||
| - **Build with a coding agent** (recommended): open your coding tool and let it scaffold and iterate. The agent drives [`pipecat create`](/api-reference/cli/create) itself, non-interactively. This path also writes **`GETTING_STARTED.md`**, developer-facing guidance on setting up the [Pipecat Context Hub](/api-reference/context-hub), writing an effective first prompt, and what to expect from a coding session. |
There was a problem hiding this comment.
Sounds like GETTING_STARTED.md like it contains some things that would be useful even if you wanted to go the wizard route and use a coding agent later to continue development. It shouldn't be tethered (at least fully) to whether the user chooses to use the wizard or not.
Some ideas:
- Always include some parts in it (e.g. context hub) but only include others (e.g. effective first prompt) if the user goes the non-wizard route
- Split into PIPECAT_README.md (always useful) and GETTING_STARTED.md (only for non-wizard usage)
| - The written `AGENTS.md` ends with a provenance footer naming the `pipecat-ai` version that wrote it, so a stale guide is detectable and refreshable. | ||
| - Passing scaffolder flags (e.g. `--name`, `--bot-type`) prints a message redirecting you to [`pipecat create`](/api-reference/cli/create) and exits non-zero. | ||
| - **`AGENTS.md` is always (re)written**, so re-running `pipecat init` refreshes the guide after a Pipecat upgrade. `GETTING_STARTED.md` is written (and refreshed) on the coding-agent path only, not when scaffolding a bot now or via `pipecat init quickstart`. | ||
| - **`CLAUDE.md` is preserved if it already exists**: pass `--force` to overwrite it. |
There was a problem hiding this comment.
This is feedback on pre-existing behavior, and thus outside the scope of this PR, but: giving AGENTS.md and CLAUDE.md different behaviors feels a bit weird to me. It feels like us favoring Claude over other coding agents: a Codex user doesn't have the same control over whether their personal edits to AGENTS.md are preserved when re-running init.
There was a problem hiding this comment.
Also: --force isn't a very descriptive name anymore now that init is a broad initialization tool rather than a "make-ready-for-agents" tool.
So, some suggestions:
- Call it something more like
--update-coding-agents - Make it apply to both files - if
--update-coding-agentsis not provided,initdoesn't update either (so it should no-op if the project already exists; no magic updating)- (In other words, the way to update coding-agent files is to run
init --update-coding-agents)
- (In other words, the way to update coding-agent files is to run
- init as starting point - create acts as an internal / standalone utility
Combine the two overlapping get-started pages into one agent-first workflow. build-your-next-bot.mdx now covers install, `pipecat init` and its fork, the coding-agent path (with Context Hub setup and the coding session), the scaffold-it-yourself path, and deploy/learn. - Delete ai-tools.mdx and remove it from the Get Started nav. - Redirect /pipecat/get-started/ai-tools and the legacy /getting-started/ai-tools to the new #build-with-a-coding-agent anchor, preserving discoverability. - Update inbound links in context-hub.mdx and the-eval-loop.mdx to the anchor. Removes the duplicated init-fork explanation and the circular "the full workflow is over there" cross-links between the two pages.
Make `pipecat init` the only advertised CLI entry point, matching the framework change that hides `create` from `pipecat --help`. - Delete api-reference/cli/create.mdx; remove it from the CLI nav; add a redirect to api-reference/cli/init - Reframe the CLI overview to lead with `init`; drop `create` from cards, command list, and help examples - init.mdx: unlink inline `create` references; replace the "pipecat create" Next Steps card with "Build Your Next Bot" - gemini-live, client quickstart, cloud-builds: start with `pipecat init` (choose "Scaffold a runnable bot now") instead of `pipecat create`
9698640 to
5ab034a
Compare
- Reframe `init` as creating a new project rather than retrofitting an existing one (per @kompfner): "create an agent-ready project", not "make a project agent-ready" - Simplify the init.mdx intro to a short choice (coding agent vs. wizard) - Drop the "make agent-ready" terminology everywhere it appeared in this PR; converge on "initialize" across init.mdx and the CLI overview, and describe what `init` writes (AGENTS.md + CLAUDE.md) instead of labeling the project "agent-ready"
Reverse the "treat create as internal" decision: `pipecat create` is a real, documented command — just not the advertised starting point. There are legit reasons to look it up (writing a coding-agent skill, scripting scaffolding, understanding what `init` runs). - Restore api-reference/cli/create.mdx and its CLI nav entry; drop the create -> init redirect - Re-add `create` to the CLI overview command list and help examples, while `init` stays the headline entry point - Get-started pages stay init-only, so a developer seeks `create` out in the reference rather than meeting it on the happy path
Documentation for the
pipecat init"starting point" work (pipecat-ai/pipecat#4861).Changes
pipecat initis the starting point. Reframed theinitreference around initializing a new project, then routing to a build method (coding agent or scaffold now). Documentedpipecat init quickstart.pipecat createstays documented, just not the advertised path. It remains a real command with its own reference page and CLI nav entry; the get-started flow and the CLI overview hero lead withinit, so developers reachcreateby seeking it out in the reference (writing a coding-agent skill, scripting scaffolding, understanding whatinitruns).pipecat init quickstart.init→ coding-agent path with Context Hub → scaffold-it-yourself → deploy). Deletedai-tools.mdx, added redirects to the#build-with-a-coding-agentanchor, and updated nav + inbound links.