one create
Create a new One workspace root skeleton.
one create creates an empty workspace. It does not ask for projects or deployment or modify local AI-tool settings. Add projects later with one add.
Usage
one create [dir] [options]
Arguments
| Argument | Description |
|---|---|
dir | Target directory. Use . to create in the current directory with basename(cwd) as the name. The target must not exist or must be empty |
-n, --name <name> | Workspace name. Defaults to basename(dir) |
-y, --yes | Non-interactive mode; uses defaults and requires an explicit dir |
-o, --output <fmt> | json / yaml / text; default is TTY-aware auto detection |
Interactive Mode
Running one create with no arguments opens terminal questions for:
- Target directory, such as
./my-app; use.for the current directory. - Workspace name, optional; when empty, One CLI uses the target directory basename.
For scripts, CI, and agents, use non-interactive commands:
one create my-app --yes
Default Workspace Capabilities
one create no longer asks users to manually select many plugins.
Workspace defaults, enabled without terminal questions
| Capability | Default | Behavior |
|---|---|---|
| Environment variables | Unbound | Bind Infisical when variables are needed; otherwise inherit the shell environment |
| Tool environment | mise | Creates root mise.toml; one add registers project tasks in that same file |
| Git checks | hk | Creates .config/hk.pkl and installs local Git launchers |
| Local development | one dev | Runs the development task graph through mise |
Creation and project addition prepare mise and automatically trust complete mise.toml files generated by One, so entering the new workspace does not require a separate trust command. Existing custom configuration keeps mise's trust policy. If no compatible runtime is installed, One may download its managed mise binary; project tools and dependencies are still installed when needed. A trust failure preserves the generated files and prints a recovery command.
Continuous integration is not configured automatically. Creating a workspace
does not write files under .github/workflows/. After adding a project, enable
a workflow that calls one run ci when needed.
Infisical binding
Creation does not contact Infisical or write an env binding. Sign in with one login when you need managed variables. The first one env set, get, or list initializes the binding; Dashboard also lets you select an existing project. Execution without a binding uses the shell environment.
Output
{
"schema": "one-cli/create/v2",
"project_name": "my-app",
"created_path": "/abs/path/my-app",
"created_in_place": false,
"package_manager": "",
"secrets_backend": "infisical",
"dev_enabled": true
}
secrets_backend records the supported source (infisical), not whether a binding already exists. dev_enabled is true. Empty workspaces have no package manager yet.
Examples
Interactive
one create
# Asks for target directory and optional workspace name
Non-interactive
one create my-app --yes
Use Infisical As Secrets Backend
one create my-app --yes
Create In Current Directory
mkdir my-app && cd my-app
one create . --yes
Create Skeleton And Add First Project
one create my-app --yes
cd my-app
one add nestjs-api --name api --yes
pnpm install
Common Errors
| Code | Recovery |
|---|---|
EXISTING_TARGET_NOT_EMPTY | Choose an empty directory, or delete the target manually and retry |
INVALID_NAME | Names must match ^[a-zA-Z0-9][a-zA-Z0-9_-]*$; replace spaces with - |
PROJECT_NAME_REQUIRED | Pass the workspace directory as the positional argument in non-interactive mode |
WORKSPACE_NESTED_FORBIDDEN | Do not create a workspace inside an existing workspace; use another directory or one add |
Full table: Error codes.
Agent instructions
New workspaces include a concise bilingual AGENTS.md with 7 rules per language covering workspace discovery, CLI help, adding projects, tasks and verification, dependencies, environment variables, and automation error handling. Command details are discovered through one <command> --help instead of embedding a full command manual. The file is team-owned; later one add operations preserve edits.