---
name: "Default project.toml contains Rust-specific setup commands for non-Rust projects"
---

# Bug 375: Default project.toml contains Rust-specific setup commands for non-Rust projects

## Description

When scaffolding a new project where no tech stack is detected, the generated `project.toml` contains Rust-specific setup commands (`cargo check`) as example fallback components. This causes coder agents to try to satisfy Rust gates on non-Rust projects.

## Fix

1. In `detect_components_toml()` fallback (when no stack markers found): replace the Rust/pnpm example components with a single generic `app` component with empty `setup = []`
2. In the onboarding prompt Step 4: simplify to configure `[[component]]` entries based on what the user told the LLM in Step 2 (tech stack), rather than re-scanning the filesystem independently

## Acceptance Criteria

- [ ] Default project.toml does not contain language-specific setup commands when that language is not detected in the project
- [ ] If go.mod is present, setup commands use Go tooling
- [ ] If package.json is present, setup commands use npm/node tooling
- [ ] If no known stack is detected, setup commands are empty or just echo a placeholder

## How to Reproduce

1. Create a new Go + Next.js project directory with `go.mod` and `package.json`
2. Run `huskies .` to scaffold
3. Check `.huskies/project.toml` — the component setup commands reference cargo/Rust
4. Start a coder agent — it creates a `Cargo.toml` trying to satisfy the Rust setup commands

## Actual Result

The scaffolded `project.toml` has Rust-specific setup commands (`cargo check`) even for non-Rust projects. Agents try to satisfy these and create spurious files.

## Expected Result

The scaffolded `project.toml` should have generic or stack-appropriate setup commands. If no known stack is detected, setup commands should be empty or minimal (not Rust-specific).

## Acceptance Criteria

- [ ] Default project.toml does not contain language-specific setup commands when that language is not detected in the project
- [ ] If go.mod is present, setup commands use Go tooling
- [ ] If package.json is present, setup commands use npm/node tooling
- [ ] If no known stack is detected, setup commands are empty or just echo a placeholder
