customizing-the-assistant
Skill0 starsChanged 4 days agoMITView on GitHub
How to change what the assistant is told, what its chat says, how it looks, where it opens, and how to see what it sent. Use when editing the assistant's instructions, chat texts, chat appearance, panel or sheet behavior, or the debug inspector.
In this repository29 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- accessibilitySkill
- actionsSkill
- adding-a-featureSkill
- agent-workflowSkill
- app-contextSkill
- approval-and-safetySkill
- backend-proxySkill
- background-workSkill
- build-an-appSkill
- capture-learningsSkill
- clean-architectureSkill
- delegate-to-agentSkill
- edit-boundariesSkill
- i18n-and-rtlSkill
- model-providersSkill
- performanceSkill
- permissions-and-platformSkill
- read-the-docsSkill
- reliable-mutationsSkill
- routingSkill
- secretsSkill
- state-managementSkill
- storing-dataSkill
- testingSkill
- ui-designSkill
- upgrade-the-frameworkSkill
- verifySkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Don't load this for choosing the model or its settings.
- Distinctive: line 39
Run the app in debug and open the inspector to read the system text.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Customizing the assistant
Don't load this for choosing the model or its settings; see model-providers. For what the assistant knows about the current screen, see app-context.
Rule
Change the assistant by editing the files below, not the packages. The instructions are a runtime asset, the chat texts come from the app's translations, and the chat takes its look from the app theme. The instructions file is bundled with the app, so the doctor's bundled-secrets check scans it: no key or key-shaped text in it.
Why
The assistant is part of the app, so it speaks the person's language and follows the theme. Keeping the instructions in an asset lets you change them without touching Dart, and keeping them short leaves room for the conversation.
How
- Instructions:
assets/assistant/instructions.md, loaded once at start inlib/ai/ai_injection.dartand passed to the session asappInstructions(lib/ai/assistant_providers.dart). Say what the app is, which tools exist and the rules the model must follow (for example: delete right away, the app shows the approval card). Update it when you add or rename an action. Don't paste the action list from the reference; the model already receives the tool definitions. - Chat texts: the chat takes an
AssistantStringsobject (defaults in English,packages/flutter_agentify_ui/lib/src/assistant_strings.dart). The app builds it from translations inlib/presentation/assistant/assistant_strings_l10n.dart. To change a text, change itsassistant_*key in every file inassets/lang/; to add a text, add a field toAssistantStringsand a line in the l10n file (i18n-and-rtl). - Theming: the chat reads
Theme.of(context)colors and text styles. Change the theme, not the chat widget. No hard-coded colors (no_hardcoded_colors). - Panel versus sheet:
lib/presentation/assistant/assistant_shell.dartshows a 380-wide side panel when the window is at leastassistantPanelBreakpoint(840) wide and a full-height bottom sheet otherwise.lib/presentation/assistant/assistant_toggle_button.dartmakes the same decision when tapped. Change the breakpoint in one place, the constant. - Debug inspector: in debug builds only, the chat shows a button that opens the inspector: the system text sent, the tools offered and the last calls. Use it to check what the model really received. It does not exist in release builds.
- Answer-only notice: shown when the model cannot use tools; see
model-providers. - Which model answers: the chat takes a
ModelStatus(header label, the in-app model's card, progress and states, the chat's menu). The app builds it inlib/presentation/assistant/assistant_shell.dart; its texts are theon_device_*keys. Where the model runs is chosen inlib/ai/assistant_setup.dart(model-providers).
Anti-patterns
- Pasting a key, a URL with a token or user data into the instructions.
- A literal string in the chat code instead of an
assistant_*key. - Instructions that contradict approval (telling the model to ask in the chat before a delete; the app already asks).
- Editing
packages/flutter_agentify_uito restyle one app.
Verification
dart run flutter_agentify_core:doctor --only bundled-secretsfor the asset.test/i18n/translations_test.dartfor matchingenandfakeys;test/presentation/assistant/assistant_shell_test.dartfor panel versus sheet.- Run the app in debug and open the inspector to read the system text.
tool/check.sh(seeverify).
Related skills
app-context— the screen block sent with each messageapproval-and-safety— what the instructions must not overridei18n-and-rtl— adding translated chat textsui-design— theme and layout rules
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

