mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-08-10 08:21:54 +00:00
feat(cli): unify scaffolding under crewai create <resource> (#6821)
* feat(cli): add canonical `crewai create tool` command Unify tool scaffolding under the create verb and deprecate `crewai tool create` with a yellow warning while keeping backward compatibility. * feat(cli): add canonical `crewai create skill` command Unify skill scaffolding under the create verb and deprecate `crewai skill create` with a yellow warning while keeping backward compatibility. * feat(cli): add canonical `crewai create template` command Unify template scaffolding under the create verb and deprecate `crewai template add` with a yellow warning while keeping backward compatibility. * docs: document unified `crewai create` scaffolding commands Document canonical create forms for tool, skill, and template projects, note deprecated aliases, and update skills and agents-md guides. * feat(cli): extend create picker and DMN guidance for all types Show tool, skill, and template in the interactive create picker and list every supported type in the CREWAI_DMN usage error. * fix(cli): allow create tool/skill/template in CREWAI_DMN mode Only set skip_provider in DMN mode for crew creation, since tool, skill, and template paths reject that flag as a crew-only option. * test(cli): patch TemplateCommand at cli lookup site in DMN test create() resolves TemplateCommand from crewai_cli.cli, not from remote_template.main directly.
This commit is contained in:
@@ -36,24 +36,73 @@ crewai [COMMAND] [OPTIONS] [ARGUMENTS]
|
||||
|
||||
### 1. Create
|
||||
|
||||
Create a new crew or flow.
|
||||
Create a new crew, flow, tool, skill, or template project.
|
||||
|
||||
```shell Terminal
|
||||
crewai create [OPTIONS] TYPE NAME
|
||||
```
|
||||
|
||||
- `TYPE`: Choose between "crew" or "flow"
|
||||
- `NAME`: Name of the crew or flow
|
||||
- `TYPE`: `crew`, `flow`, `tool`, `skill`, or `template`
|
||||
- `NAME`: Name of the project, tool handle, skill, or template
|
||||
|
||||
Example:
|
||||
#### Crew
|
||||
|
||||
```shell Terminal
|
||||
crewai create crew my_new_crew
|
||||
crewai create flow my_new_flow
|
||||
crewai create crew my_new_crew --classic
|
||||
```
|
||||
|
||||
By default, `crewai create crew` creates a JSON-first crew project with `crew.jsonc` and `agents/*.jsonc`. Use `crewai create crew my_new_crew --classic` only when you want the older Python/YAML scaffold with `crew.py`, `config/agents.yaml`, and `config/tasks.yaml`.
|
||||
|
||||
#### Flow
|
||||
|
||||
```shell Terminal
|
||||
crewai create flow my_new_flow
|
||||
crewai create flow my_new_flow --declarative
|
||||
```
|
||||
|
||||
#### Tool
|
||||
|
||||
Scaffold a custom tool repository:
|
||||
|
||||
```shell Terminal
|
||||
crewai create tool my_tool
|
||||
```
|
||||
|
||||
#### Skill
|
||||
|
||||
Scaffold an agent skill. Inside a crew project (where `pyproject.toml` exists), the skill is created under `./skills/`:
|
||||
|
||||
```shell Terminal
|
||||
crewai create skill my-skill
|
||||
crewai create skill my-skill --no-project
|
||||
```
|
||||
|
||||
Use `--no-project` to create the skill in the current directory instead of `./skills/`.
|
||||
|
||||
#### Template
|
||||
|
||||
Add a remote project template to the current directory:
|
||||
|
||||
```shell Terminal
|
||||
crewai create template my-template
|
||||
crewai create template my-template --output-dir custom_dir
|
||||
```
|
||||
|
||||
Use `--output-dir` to override the output folder name (defaults to the template name).
|
||||
|
||||
#### Deprecated create aliases
|
||||
|
||||
These older commands still work but print a yellow deprecation warning. Prefer the `crewai create <type>` forms above.
|
||||
|
||||
| Deprecated | Use instead |
|
||||
| :--- | :--- |
|
||||
| `crewai tool create <handle>` | `crewai create tool <handle>` |
|
||||
| `crewai skill create <name>` | `crewai create skill <name>` |
|
||||
| `crewai template add <name>` | `crewai create template <name>` |
|
||||
|
||||
Lifecycle commands are unchanged — for example `crewai tool install`, `crewai skill publish`, and `crewai template list` stay under their resource groups.
|
||||
|
||||
### 2. Version
|
||||
|
||||
Show the installed version of CrewAI.
|
||||
|
||||
@@ -32,10 +32,10 @@ You often need **both**: skills for expertise, tools for action. They are config
|
||||
The CLI is the supported way to create a skill — it scaffolds the directory layout and a valid `SKILL.md` for you:
|
||||
|
||||
```shell Terminal
|
||||
crewai skill create code-review
|
||||
crewai create skill code-review
|
||||
```
|
||||
|
||||
Inside a crew project (where `pyproject.toml` lives) this creates `./skills/code-review/`; outside a project it creates `./code-review/` in the current directory (you can force that behavior with `--no-project`):
|
||||
Inside a crew project (where `pyproject.toml` lives) this creates `./skills/code-review/`; outside a project it creates `./code-review/` in the current directory (you can force that behavior with `--no-project` on `crewai create skill`):
|
||||
|
||||
```
|
||||
skills/
|
||||
@@ -178,12 +178,16 @@ agent = Agent(
|
||||
|
||||
## Creating, Publishing, and Installing Skills
|
||||
|
||||
Skills have a full lifecycle managed by the CLI: **create them with `crewai skill create`, publish them with `crewai skill publish`** — hand-rolling directories works for local experiments, but the CLI is the intended workflow and keeps your skill layout and frontmatter valid.
|
||||
Skills have a full lifecycle managed by the CLI: **create them with `crewai create skill`, publish them with `crewai skill publish`** — hand-rolling directories works for local experiments, but the CLI is the intended workflow and keeps your skill layout and frontmatter valid.
|
||||
|
||||
<Note>
|
||||
`crewai skill create` is deprecated and still works with a warning. Use `crewai create skill` instead.
|
||||
</Note>
|
||||
|
||||
### Create
|
||||
|
||||
```shell Terminal
|
||||
crewai skill create my-skill
|
||||
crewai create skill my-skill
|
||||
```
|
||||
|
||||
Scaffolds the directory (into `./skills/` inside a crew project) with a template `SKILL.md`, plus empty `scripts/`, `references/`, and `assets/` directories. Edit `SKILL.md` to define the instructions.
|
||||
|
||||
@@ -21,9 +21,13 @@ crewai create crew my_crew
|
||||
crewai create flow my_flow
|
||||
|
||||
# Tool repository
|
||||
crewai tool create my_tool
|
||||
crewai create tool my_tool
|
||||
```
|
||||
|
||||
<Note>
|
||||
`crewai tool create` is deprecated and still works with a warning. Use `crewai create tool` instead.
|
||||
</Note>
|
||||
|
||||
## Tool Setup: Point Assistants to AGENTS.md
|
||||
|
||||
### Codex
|
||||
|
||||
Reference in New Issue
Block a user