Skip to main content
sauce init creates a project that uses @eco-incorp/sauce. You can also use it to generate only the editor tsconfig.json for SauceScript programs.

Synopsis

Description

sauce init <dir> writes a project into <dir>, the current directory when you give none: It then installs the agent skills as sauce skills install does, for every agent unless --agent names some. init overwrites nothing without --force. When a file it would write already exists with other content, it lists the files and refuses the whole scaffold, before writing anything. A file that already has the same content is reported unchanged. init runs no package manager unless you pass --install, which runs npm install in the project. sauce init <dir> --tsconfig writes only <dir>/tsconfig.json, the same SauceScript project as programs/tsconfig.json. Use it for programs in a project init did not write, or in another directory: an editor takes a file’s nearest tsconfig.json, so every *.sauce.ts under <dir> gets SauceScript’s names and the plugin. Where the project’s own tsconfig.json also covers those files, add "exclude": ["**/*.sauce.ts"] to it so its TypeScript does not check them too. --tsconfig refuses --agent and --install. The plugin loads where the editor runs the project’s own TypeScript.

Options

Output

init prints each file with its state (wrote, unchanged), then the skills installed, then the next commands to run. It exits 1 when it refuses to overwrite a file, and 1 when npm install fails under --install.

Examples

Scaffold a project

Besides the skills directories .claude/skills/ and .agents/skills/, the project holds:
The package.json it wrote:
package.json
The config example:
sauce.config.example.json

Refuse to overwrite

After CLAUDE.md was edited, a second init refuses and writes nothing.
The command exits 1.

Scaffold for one agent

With codex alone, init writes no CLAUDE.md and no GEMINI.md.

Write only an editor tsconfig

Next steps