Skip to content
Ultracite
Esc
↑↓navigate↵open⌘Jpreview

Zencoder dropped custom rules for AGENTS.md

Zencoder’s agent takes its project instructions from AGENTS.md, which replaced custom rules in May 2026, so Ultracite’s rules reach it in VS Code and JetBrains IDEs. Ultracite doesn’t set up a hook for it; in Zenflow, a verification_script can run ultracite check after every agent turn.

Zencoder by ZencoderChecked against October 2026

# Ultracite Code Standards

This project uses **Ultracite**, a zero-config preset that enforces strict code quality standards through automated formatting and linting.

## Quick Reference

- **Format code**: `npx ultracite fix`
- **Check for issues**: `npx ultracite check`
- **Diagnose setup**: `npx ultracite doctor`

Oxlint + Oxfmt (the underlying engine) provides robust linting and formatting. Most issues are automatically fixable.

…
Ultracite’s rules
Where Zencoder looks for instructions
  1. 1AGENTS.mdUltraciteThe project’s instructions for Zencoder’s agent, and where init writes Ultracite’s rules.
  2. 2Always Included RulesA Zenflow repository setting: files you list, one per line (such as CLAUDE.md), are always added to the agent’s context.
  3. 3.agents/skills/Skills, loaded when one’s description matches the task. .claude/skills/ and ~/.agents/skills/ work too.
  4. 4.zencoder/rules/Where custom rules lived. Zencoder removed them in May 2026, so move anything left here into AGENTS.md.

How Zencoder reads the rules

Zencoder resolves agent instructions from AGENTS.md (since February 2026), and it’s now the place for project conventions: custom rules were deprecated in March 2026 and removed in May.

Timeline
AGENTS.md support arrived in February 2026. Custom rules were deprecated in March and fully removed in May 2026.
Other agents
Zenflow can run Claude Code, Codex or Gemini as the agent. List AGENTS.md under Always Included Rules to put it in front of whichever you pick.
Skills
.agents/skills/ is the current location. The legacy .zencoder/skills/ still works but is deprecated.

A verification script after every turn

In Zenflow, verification_script in .zenflow/settings.json runs after each agent turn, which makes npx ultracite check a quality gate on every change. When it fails, you see the output and tell the agent to fix it: handing failures to the agent automatically is planned, not shipped. In the IDE plugins, the agent runs ultracite fix when AGENTS.md tells it to.

{
  "setup_script": "npm install",
  "verification_script": "npx ultracite check"
}
  1. 01The agent finishes a turn in the task’s worktree.
  2. 02Zenflow runs verification_script, here npx ultracite check.
  3. 03If it exits with code 0, the task carries on.
  4. 04Any other exit code and Zenflow shows you the output, so you can ask the agent to fix it.

Worth knowing about Zencoder

  • Each task gets its own worktree

    Zenflow runs every Code task in its own Git worktree at .zenflow/worktrees/{task_id}, on its own branch, and setup_script runs when that worktree is created. Install dependencies there so ultracite is ready for the verification script.

  • Auto-approve for trusted work

    Auto-approve mode, generally available in VS Code and JetBrains since May 2026, lets the agent run end to end without pausing to confirm each action, including the ultracite commands the rules ask for.

  • A different model can review

    Zenflow’s Multi-model workflow assigns different models to planning, implementation and review, so a second model reviews what the first one wrote.

  • The Ultracite skill

    Zencoder loads skills from .agents/skills/, plus ~/.agents/skills/ and .claude/skills/, in both the IDE plugins and Zenflow, so it finds the Ultracite skill init installs in .agents/skills/.

Zencoder questions, answered

Does Zencoder read AGENTS.md?
Yes. Since February 2026 Zencoder resolves agent instructions from AGENTS.md, and since May 2026 it’s the way to set project conventions, because custom rules are gone. ultracite init --agents zencoder writes Ultracite’s rules there.
What happened to Zencoder’s custom rules?
Zencoder began phasing them out in March 2026 and removed them in May 2026, pointing to AGENTS.md instead. Move anything still in .zencoder/rules/ into AGENTS.md.
How do I make Zenflow run the linter?
Set verification_script to npx ultracite check in .zenflow/settings.json, or under Scripts & Automation in the repository’s settings. Zenflow runs it after every agent turn and shows you the output when it fails.
Does Zencoder support hooks?
Zencoder’s changelog says zencli gained a hooks system in May 2026 for running commands at points in an agent’s lifecycle. Its docs don’t describe the configuration yet, and Ultracite doesn’t set one up.
Does Zenflow’s Claude Code agent see the rules?
Zenflow can run Claude Code, Codex or Gemini, and each loads instructions its own way. Add AGENTS.md to the repository’s Always Included Rules so it’s in the agent’s context whichever you choose.

Ship less slop

One command sets up your linter, formatter, editor and agents. Works with Oxlint, Biome and ESLint.