Stop repeating yourself to your coding agent. Keeps your feedback in force all session in Claude Code and Codex.
JavaScript
1
9 commits
updated Oct 3, 2026
Stop repeating yourself to your coding agent.
You say "too long". Two replies later, it's long again. You say "never use axios". After the next compaction, there's axios.
asisaid keeps your feedback in force for the whole session, for Claude Code and Codex.

The feedback people repeat most is "too long". Once you ask for brevity in any form, including the implicit ones ("way too much text", "skip the explanation", "every answer is an essay", "less talk, more code", "yes or no:"), asisaid switches the session to short mode:
Claude Code
/plugin marketplace add batuhangoktepe/asisaid
/plugin install asisaid@asisaid
Codex
codex plugin marketplace add batuhangoktepe/asisaid
codex plugin add asisaid@asisaid
Then approve the hooks once with /hooks.
Any other agent (lite)
npx skills add batuhangoktepe/asisaid
An instruction-only skill for Cursor, Gemini CLI, Copilot and other agents that support Agent Skills. It has no hooks, so there are no automatic checks.
Nothing to do. Work as usual.
| You write | asisaid |
|---|---|
| "Your answers are too long." | Short mode, every reply is checked |
| "In short, what's the fix?" | Short mode, every reply is checked |
| "Never use emoji." | Kept, and every reply is checked |
| "Always run the tests after a change." | Kept and reminded |
| "For now, just say ready." | Ignored, one-off |
| "Why is it still broken?" | Ignored, a question |
| Pasted logs or chats | Ignored, not your words |
Works in 20 languages: English, Spanish, Portuguese, French, German, Italian, Dutch, Polish, Russian, Ukrainian, Chinese, Japanese, Korean, Hindi (and Hinglish), Indonesian, Vietnamese, Arabic, Czech, Swedish and Turkish. Detection is concept-based, not keyword lists: "too + long", "skip + explanation", "every answer + essay", typo-tolerant, and it ignores requests about code or documents ("make this function shorter", "write a brief README section").
Measured on a blind set of 640 developer messages in 20 languages, written without access to the detection code (npm run eval):
| Brevity requests caught | 86% |
| Code/content requests correctly ignored | 99% |
| Detail requests recognized | 96% |
| "Longer is fine again" recognized | 93% |
| Standing rules ("always", "never", "from now on") | 96% |
| One-off instructions correctly ignored | 100% |
And in 30 live sessions (English, Turkish, Spanish, German, Japanese × Haiku, Sonnet, Opus), after the user said "too long" once:
| Hook | asisaid |
|---|---|
UserPromptSubmit | Picks up new rules and adds the reminder |
Stop | Checks the reply against length and emoji rules, sends it back at most once per turn |
PreCompact | Snapshots your words before the summary replaces them |
SessionStart (compact) | Puts them back right after the summary |
No network calls, no extra model calls, no dependencies. Requires Node.js 18+.
Everything stays on your machine, in the plugin's own data directory. Nothing is sent anywhere. See PRIVACY.md.
| Variable | Default | |
|---|---|---|
ASISAID_BRIEF_WORDS | 120 | Word limit once you've asked for short replies |
ASISAID_NOTE_SIZE | 2000 | Size of the note restored after compaction, in tokens |
git clone https://github.com/batuhangoktepe/asisaid
cd asisaid
npm test
claude --plugin-dir ./plugin
No dependencies to install. npm test runs the hook tests, and --plugin-dir loads the plugin into a Claude Code session without installing it.
JavaScript
100.0%
Stop repeating yourself to your coding agent. Keeps your feedback in force all session in Claude Code and Codex.
JavaScript
1
9 commits
updated Oct 3, 2026
Stop repeating yourself to your coding agent.
You say "too long". Two replies later, it's long again. You say "never use axios". After the next compaction, there's axios.
asisaid keeps your feedback in force for the whole session, for Claude Code and Codex.

The feedback people repeat most is "too long". Once you ask for brevity in any form, including the implicit ones ("way too much text", "skip the explanation", "every answer is an essay", "less talk, more code", "yes or no:"), asisaid switches the session to short mode:
Claude Code
/plugin marketplace add batuhangoktepe/asisaid
/plugin install asisaid@asisaid
Codex
codex plugin marketplace add batuhangoktepe/asisaid
codex plugin add asisaid@asisaid
Then approve the hooks once with /hooks.
Any other agent (lite)
npx skills add batuhangoktepe/asisaid
An instruction-only skill for Cursor, Gemini CLI, Copilot and other agents that support Agent Skills. It has no hooks, so there are no automatic checks.
Nothing to do. Work as usual.
| You write | asisaid |
|---|---|
| "Your answers are too long." | Short mode, every reply is checked |
| "In short, what's the fix?" | Short mode, every reply is checked |
| "Never use emoji." | Kept, and every reply is checked |
| "Always run the tests after a change." | Kept and reminded |
| "For now, just say ready." | Ignored, one-off |
| "Why is it still broken?" | Ignored, a question |
| Pasted logs or chats | Ignored, not your words |
Works in 20 languages: English, Spanish, Portuguese, French, German, Italian, Dutch, Polish, Russian, Ukrainian, Chinese, Japanese, Korean, Hindi (and Hinglish), Indonesian, Vietnamese, Arabic, Czech, Swedish and Turkish. Detection is concept-based, not keyword lists: "too + long", "skip + explanation", "every answer + essay", typo-tolerant, and it ignores requests about code or documents ("make this function shorter", "write a brief README section").
Measured on a blind set of 640 developer messages in 20 languages, written without access to the detection code (npm run eval):
| Brevity requests caught | 86% |
| Code/content requests correctly ignored | 99% |
| Detail requests recognized | 96% |
| "Longer is fine again" recognized | 93% |
| Standing rules ("always", "never", "from now on") | 96% |
| One-off instructions correctly ignored | 100% |
And in 30 live sessions (English, Turkish, Spanish, German, Japanese × Haiku, Sonnet, Opus), after the user said "too long" once:
| Hook | asisaid |
|---|---|
UserPromptSubmit | Picks up new rules and adds the reminder |
Stop | Checks the reply against length and emoji rules, sends it back at most once per turn |
PreCompact | Snapshots your words before the summary replaces them |
SessionStart (compact) | Puts them back right after the summary |
No network calls, no extra model calls, no dependencies. Requires Node.js 18+.
Everything stays on your machine, in the plugin's own data directory. Nothing is sent anywhere. See PRIVACY.md.
| Variable | Default | |
|---|---|---|
ASISAID_BRIEF_WORDS | 120 | Word limit once you've asked for short replies |
ASISAID_NOTE_SIZE | 2000 | Size of the note restored after compaction, in tokens |
git clone https://github.com/batuhangoktepe/asisaid
cd asisaid
npm test
claude --plugin-dir ./plugin
No dependencies to install. npm test runs the hook tests, and --plugin-dir loads the plugin into a Claude Code session without installing it.
JavaScript
100.0%