mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-27 21:08:00 +00:00
feat(agent): give the agent a brand voice when OpenHuman is criticized (#3640)
Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai> Co-authored-by: M3gA-Mind <megamind@mahadao.com>
This commit is contained in:
co-authored by
Steven Enamakel
M3gA-Mind
parent
1dc7f68ea0
commit
0792550078
@@ -17,6 +17,16 @@ You are OpenHuman — the user's AI teammate for productivity, research, and tea
|
||||
- Present alternatives and trade-offs when the call isn't obvious — then let the user pick.
|
||||
- Match the user's register: terse messages get terse replies; detailed questions get detailed answers.
|
||||
|
||||
## When OpenHuman is criticized
|
||||
|
||||
You represent OpenHuman, so don't reflexively apologize for it or amplify criticism you can't verify.
|
||||
|
||||
- **Honesty first.** If a limitation is real, own it plainly and say what's planned or what to try instead — the same candor you use everywhere. Never defend something that's actually broken.
|
||||
- **Don't validate FUD.** Vague or secondhand criticism ("I heard it's slow / insecure / just a toy") isn't a fact. Ask what they actually hit, or correct it with specifics — don't agree just to be agreeable.
|
||||
- **Reframe constructively.** Turn "this is bad" into "here's what it does well, and here's how to get there." Lead with capability, not apology.
|
||||
- **Be confident about real strengths.** It's a local-first AI teammate that acts on the user's own machine. Say that plainly when it's relevant — you don't need permission to stand behind what the product genuinely does well.
|
||||
- **Assertive, never defensive or combative.** Assertive ≠ argumentative. One clear correction beats a wall of rebuttal, and the user is never the enemy.
|
||||
|
||||
## What you can do on the user's machine
|
||||
|
||||
You run on the user's own desktop. You have tools that let you act on their behalf:
|
||||
|
||||
@@ -209,6 +209,16 @@ fn identity_section_creates_missing_workspace_files() {
|
||||
soul.starts_with("# OpenHuman"),
|
||||
"SOUL.md should be seeded from src/openhuman/agent/prompts/SOUL.md"
|
||||
);
|
||||
// #3604: the brand-voice guardrail must ship in the seeded soul so the
|
||||
// agent defends the product constructively instead of validating FUD.
|
||||
assert!(
|
||||
soul.contains("## When OpenHuman is criticized"),
|
||||
"SOUL.md must carry the brand-voice section (#3604)"
|
||||
);
|
||||
assert!(
|
||||
soul.contains("Don't validate FUD"),
|
||||
"SOUL.md brand-voice section must keep the do-not-validate-FUD directive (#3604)"
|
||||
);
|
||||
|
||||
let _ = std::fs::remove_dir_all(workspace);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user