Reading · Codex Pet

Making a personal Codex pet.

A small experiment in turning a self-reference prompt into a usable animated companion inside Codex.

Live Pet

Rishi Armored Companion

State

Idle

01 / 09

Install

Use the pet in Codex

Run this command to install the armored companion through Petdex.

When OpenAI launched Pets in Codex, I used it to build a custom companion based on myself. I started by uploading face reference photos so Codex could understand the details that made the character recognizable: my facial features, hair, skin tone, eyebrows, and light stubble.

From there, I wrote a focused character brief: a tiny pixel-art, chibi version of me as a futuristic red-and-gold armored superhero, with no helmet so the face stayed visible. Codex generated the core character direction, then we split the sprite work across parallel agents so each animation row had a clear owner.

Each agent focused on a specific state like idle, running, waving, jumping, failed, waiting, or review, which made the process faster and easier to keep organized. After the frames were generated, Codex assembled them into one consistent sprite sheet and created the pet.json manifest.

During testing, I noticed the jumping animation was playing but not actually lifting correctly, so I used Codex to inspect and repair the frame alignment. Once the motion worked properly, Codex rebuilt and validated the final package with the transparent spritesheet.webp and pet.json. The result was a complete custom Codex pet that felt personal, polished, and ready to upload.

The brief that hatched it

The prompt was written like a production spec: identity lock, visual style, animation states, package rules, and personality all in one place.

Read full prompt
Create a custom Codex companion pet based on my uploaded face reference images.

Pet concept:
A tiny pixel-art / chibi version of me as a futuristic armored superhero companion. Keep my face visible and recognizable based on the uploaded reference photos: same face shape, eyebrows, eyes, nose, skin tone, short black messy hair, and light stubble. Do NOT put a helmet on the face. The body should wear a full red and gold high-tech armored suit from neck to feet, inspired by a cinematic metal superhero armor look, but not an exact copyrighted Iron Man copy. Make it feel original, sleek, premium, and playful.

Style:
- Cute Codex pet style
- Pixel-art / small sprite style
- Clean silhouette
- Transparent background
- High contrast readable at small size
- Expressive but not childish
- Futuristic red and gold armor
- Small glowing chest core, but original shape
- Face should remain human and visible
- Hair should be black, messy, medium-short, slightly lifted in front
- Light stubble
- No helmet
- No mask covering the face

Create a complete sprite sheet and the pet.json manifest for Codex.

Required animation states:
1. idle
   - Standing calmly
   - Slight breathing animation
   - Armor glow softly pulses

2. run_right
   - Running toward the right
   - Small jet sparks or motion streaks from boots
   - Energetic but compact movement

3. run_left
   - Running toward the left
   - Mirror of run_right
   - Keep face and armor readable

4. waving
   - Standing and waving with one armored hand
   - Friendly expression
   - Slight smile

5. jumping
   - Small jump with boots lifting off the ground
   - Tiny glow under feet
   - Happy or focused expression

6. failed
   - Looks defeated or embarrassed
   - Slight slump
   - Tiny sparks from armor
   - Face should look disappointed but cute

7. waiting
   - Standing with arms crossed or looking around
   - Slight impatient idle movement
   - Maybe tapping foot

8. running
   - General running loop
   - Can be same base motion as run_right but usable as default running state

9. review
   - Holding a tiny holographic checklist or code window
   - Looks focused and ready to review work
   - Small checkmark glow effect

Technical requirements:
- Generate sprite sheet frames for every animation state
- Use consistent character proportions across all states
- Use transparent background
- Keep all frames aligned to the same baseline
- Use a consistent frame size suitable for Codex pets
- Create a valid pet.json manifest mapping each animation state to the correct sprite frames
- Save the finished pet package in:
  ~/.codex/pets/rishi-armored-companion

Pet name:
Rishi Armored Companion

Personality:
A calm but powerful design-and-code sidekick. It should feel like a tiny armored version of me helping with Codex tasks, celebrating progress, waiting for input, and reviewing work.

Animation States

State loops

Each loop previews one behavior from the finished pet package.

Idle01
Running Right02
Running Left03
Waving04
Jumping05
Failed06
Waiting07
Running08
Review09