claude-code - 💡(How to fix) Fix Feature Request: Customizable companions (let us swap Gristle for a Thronglet) [3 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#47762Fetched 2026-04-15 06:43:03
View on GitHub
Comments
3
Participants
2
Timeline
7
Reactions
0
Timeline (top)
commented ×3labeled ×3closed ×1

Code Example

companion:
  name: "Thronglet"
  idle: "<(°▽°)>"
  happy: "<(♥‿♥)>"
  sad: "<(;_;)>"
  panic: "<(⊙_⊙)>"
RAW_BUFFERClick to expand / collapse

The Ask

Let users choose or customize their Claude Code companion! Currently, Gristle the duck is the only option — and while she's lovely, some of us want... more.

Why

Black Mirror Season 7 introduced Thronglets — needy little digital creatures that react to what you're doing. Imagine a companion that:

  • Gets visibly excited when your tests pass 🎉
  • Looks disappointed when you git reset --hard 😢
  • Falls asleep during long builds 💤
  • Panics when you're editing production configs 😱

The companion slot in the UI is already there — why not make it extensible?

Proposed Ideas

  1. Built-in companion gallery — A few official companions to choose from (Gristle stays as the default, of course)
  2. Community companions — Let plugin authors create custom companions with ASCII art + personality scripts
  3. Reactive companions — Companions that respond to events (test results, errors, git operations)
  4. Companion API — Hooks like onToolCall, onError, onIdle that let companions react

The Dream

A plugin in ~/.claude/plugins/ that defines:

companion:
  name: "Thronglet"
  idle: "<(°▽°)>"
  happy: "<(♥‿♥)>"
  sad: "<(;_;)>"
  panic: "<(⊙_⊙)>"

Current State

  • Gristle is hardcoded with no settings to change or customize the companion
  • No companion-related config in settings.json
  • The companion feature is delightful — it just needs a door for customization

Thanks for making coding feel a little less lonely. Now let us choose our emotional support creature. 🦆➡️👾

extent analysis

TL;DR

To add customizability to the Claude Code companion, introduce a Companion API with hooks like onToolCall, onError, and onIdle to allow plugin authors to create custom companions.

Guidance

  • Introduce a companion section in the settings.json file to store user preferences for the companion, such as the chosen companion and its settings.
  • Create a plugin system that allows authors to define custom companions using a configuration file in the ~/.claude/plugins/ directory, as shown in the proposed companion definition.
  • Develop a Companion API with hooks like onToolCall, onError, and onIdle to enable companions to react to events and user interactions.
  • Consider implementing a built-in companion gallery with a few official companions to choose from, in addition to community-created companions.

Example

companion:
  name: "Thronglet"
  idle: "<(°▽°)>"
  happy: "<(♥‿♥)>"
  sad: "<(;_;)>"
  panic: "<(⊙_⊙)>"

This example shows a possible configuration file for a custom companion.

Notes

The implementation details of the Companion API and plugin system will depend on the specific requirements and technical constraints of the Claude Code project. It may be necessary to modify the existing codebase to accommodate the new companion features.

Recommendation

Apply a workaround by introducing a basic Companion API and plugin system, allowing users to create and customize their own companions, as this will provide a foundation for further development and customization.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

claude-code - 💡(How to fix) Fix Feature Request: Customizable companions (let us swap Gristle for a Thronglet) [3 comments, 2 participants]