Documentation / The agent

Memory, skills and rules

How to give the agent lasting context with project memory, skills, prompts, hooks and rules, and how it learns from its mistakes.

The agent doesn't start from scratch in every conversation. It remembers what matters about the project, loads procedures according to the task and follows your team's rules.

Everything is managed in the project panel, Agent tab, with the Skills, Prompts, Hooks, Rules and Install subtabs. At the top you choose the scope: Platform (Yuli's agent) or Subscriptions (Claude Code, Kiro, Codex and Antigravity).

Project memory

What the agent should remember: instructions, decisions, conventions and project facts.

  • Save: tell it “remember that…” in the chat, or add it by hand.
  • View and edit: chat header → More actions → Project memory.
  • Where it lives: .ai/memory/, versionable with the project.
Group Example
Instructions “Always answer with examples in Java 17.”
Decisions “We use hexagonal architecture in the payments module.”
Conventions “DTOs end in Dto and live in api/dto.”
Project facts “The local profile uses the orders_dev database.”

Entries that arrive with the repository show up as “from the repository — unconfirmed” and aren't sent to the model until you confirm them. That way a third-party repository can't give instructions to the agent.

Team memory

The team's shared memory lives in .ai/team.json, versioned with the project. You can see it in Global options → Team.

Skills

A skill is a procedure the agent loads only when the task needs it. Yuli ships with 19 built in:

Area Skills
Code Explain code, Implement a feature, Safe refactor, refactor-or-evolve
Testing Write unit tests, Testing strategy
Quality and review Code review, Security review, Integration review
Diagnostics Debug to the root cause, Fix build errors, gradle-java-build
Design Requirements analysis, Architecture design, ui-ux-design
Data Database explorer
Documentation document-system (document the system on request), sdlc-documentation
Git Commit message

Built-in skills are Read-only and update with the app. To adapt one, use Duplicate to customize.

Your own skills

Create your own in the Skills subtab or import them with Import skills, prompts and hooks. Yuli accepts SKILL.md, PROMPT.md, Claude Code commands, Copilot .prompt.md files and hooks.json.

Your skills, prompts and hooks are saved in your user folder (on Windows, %APPDATA%\.yulicode\), so they go with you across all your projects.

How they combine

In Agent configuration:

Mode What it uses
Automatic Only Yuli's.
Custom Only yours.
Recommended + mine (default) Both. If a name matches, yours wins.

Prompts

Prompts are the agent's base instructions: identity, lifecycle of large tasks, team lead, sub-agent… Yuli ships them calibrated. You can duplicate and adjust them.

The internal prompts are in English for greater precision and fewer tokens. The answer always comes back in the language of whoever writes.

Hooks

A hook intercepts an agent action: for example, formatting what was modified or validating a proposal before applying it. Scripts are Node.js, receive the event as JSON, and a non-zero exit code blocks the action. The reason for the block reaches the agent so it can adjust its plan.

Event When
Before using a tool Before each tool.
After using a tool After each tool.
When a proposal is finished When the agent finishes proposing a change.
Before authorizing Before you approve.
After applying changes When the change has reached the disk.

Yuli includes ready-made hooks: Block dangerous commands, Don't read secrets, Protect sensitive files, No secrets in code, No conflict markers and No huge files.

Project rules

Rules are instructions the agent always follows in that project.

File Scope
.agentrules, yuli.md or .cursorrules at the root The whole project.
.agentrules in a subfolder That folder. The closest file wins.
.ai/rules/*.md Team rules.

In the Rules subtab: + Create .agentrules, Recommended rules and Import package (.zip).

Learned rules

Yuli learns from repeated mistakes. When the same finding shows up 3 or more times in at least 2 tasks within 30 days, it becomes a rule in .ai/rules/learned.md.

Review them in the Governance Center → Agents → Learning. You can reject a candidate; it's only proposed again if its evidence doubles.

For your subscription agent

In the Subscriptions scope, each agent has its own section with the rules file Yuli hands it, its status and “What Yuli hands {agent}”: the session rules and each Yuli skill with its token cost.