Remix.run Logo
rkuska 6 hours ago

Regarding:

``` # Development Workflow

*Always use `bun`, not `npm`.*

# 1. Make changes

# 2. Typecheck (fast)

bun run typecheck

# 3. Run tests

bun run test -- -t "test name" # Single suite bun run test:file -- "glob" # Specific files

# 4. Lint before committing

bun run lint:file -- "file1.ts" bun run lint

# 5. Before creating PR

bun run lint:claude && bun run test ```

I have these things in pre-commit, this way the targets are always ran and the agent is forced to fix them (I ask claude to commit changes). The agents are erratic and very often skip these steps. Anything that can be deterministic I keep as scripts.

Regarding commits; both codex and claude are terrible at writing them. I have in my user CLAUDE.md:

``` Pattern: `type(scope): message` where type is `fix`, `feat`, `chore`, `docs`, `refactor`, or `style`; scope marks what is affected; message is a short lowercased description.

Keep subject and body lines under 72 characters. Always write a body explaining what, how, and why in continuous human-readable text. For fixes include the error message being fixed. No first-person speech. Re-read the actual git diff before writing — the message must describe what changed, not what was planned.

Use following command to create commit:

```bash git commit -F - <<'EOF' type(scope): subject line

Body paragraph explaining what, how, and why. EOF ```

```

Without it would write the body as a single long sentence; when asked to fix lines it would just insert \n (newlines), which were not respected and were instead just rendered as characters.

Another thing I find helpful is VOCABULARY.md. Very often the agent would assume (connect?) a different thing than what I had in mind, with VOCABULARY I make sure when I say "thing" claude and I have both the same "understading" (connection?) what "thing" is.

hansmayer 4 hours ago | parent | next [-]

I mean at this point, you should just write a few deterministic orchestration scripts to automate away the boring parts and write the code yourself. Why are we wasting our time on making the wonder shit-machine work?

trick-or-treat 4 hours ago | parent | prev [-]

Isn't it simpler to use claude's vocabulary? I don't see a good use case for this.

hennell 2 hours ago | parent [-]

To understand a solution you must first understand the problem. If your whole company calls its customers "clients" but claude finds that confusing, I think it's probably easier to tell claude that then get everyone in the company to change how they talk.