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
.claude/skills/ and .agents/skills/, the project holds:
package.json it wrote:
package.json
sauce.config.example.json
Refuse to overwrite
AfterCLAUDE.md was edited, a second init refuses and writes nothing.
Scaffold for one agent
codex alone, init writes no CLAUDE.md and no GEMINI.md.
