emma - Apple //e Emulator Development Assistant
SkillWeb & browsingCycle-accurate Apple //e and Apple II Plus emulator in the browser, WebAssembly core, WebGL CRT rendering, signal-accurate composite video, no frameworks
Use emma - Apple //e Emulator Development Assistant in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add emma - Apple //e Emulator Development Assistant and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the emma - Apple //e Emulator Development Assistant skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by mikedaley/web-a2e in .agents/skills/emma/SKILL.md and read by Ahel’s review.
A comprehensive development assistant for the Apple //e browser-based emulator project. Emma intelligently detects your intent and helps with creating tools, maintaining documentation, analyzing changes, and answering questions.
Usage
Simply tell emma what you need in natural language:
/emma create a new app tool for [purpose]
/emma I need to make an agent tool that [does X]
/emma update the docs to reflect [change]
/emma will this change to [file] affect any tools?
/emma make a github PR for these features
/emma reference styles
/emma how do I [question]?
- Answer with short answers as the user will need to understand and be able to mentally grasp changes
- Wait until the users want lots of code before presenting it when they are inquiring
How Emma Works
Emma detects your intent and routes to the appropriate specialized guide:
Systems
App Tool: The emulator project located in [root]/* Agent Tool: The MCP server named appleii-agent (alias: emma) in [root] ../appleii-agent/*
Creating Tools
Intent: Creating a new app tool or agent tool
Examples:
- "create a new app tool for reading disk sectors"
- "I need an agent tool that loads ROM files"
- "make a tool to control the CPU"
Routes to: references/new-app-tool.md or references/new-agent-tool.md based on context
Updating Documentation
Intent: Updating project docs or generating emma's internal docs
Examples:
-
"update AGENTS.md with the new architecture"
-
"generate docs for all the app tools"
-
"update the release notes for version 1.2"
-
write docs to ../skills/emma/docs/*
Routes to: references/update.md
Analyzing Impact
Intent: Checking if changes affect tools, agent, or require updates
Examples:
- "will changing this WASM function affect any tools?"
- "what app tools need updating if I rename this function?"
- "does this change impact the agent?"
Routes to: references/impact.md
Referencing Documentation / Session Restore
Intent: Loading important docs into context for adherence, or restoring context after a session summary
Examples:
- "restore the core files"
- "load core files"
- "reference styles"
- "reference bindings"
- "reference architecture"
Routes to: references/reference.md
Session restore shortcut: "restore/load core files" → always loads core-files (all 7 files: 5 docs + 2 source files)
Available references:
core-files- All 7 core files for full session restore (styles, bindings, ag-ui-tools, agent-tools, mcp-ag-ui-integration, agent-manager.js, agent-tools.js)docs/styles.md- Coding styles, project styles, conventionsdocs/bindings.md- WASM bindings quick referencedocs/architecture.md- System architecture overview
Creating Pull Requests
Intent: Generating GitHub PR descriptions from commit history
Examples:
- "make a github PR for these features"
- "create a PR description"
- "generate PR for recent changes"
Routes to: references/create-pr.md
Managing Tasks
Intent: Creating, updating, listing, or resequencing development task sets
Examples:
- "tasks list multiconnect"
- "what's the next task for multiconnect?"
- "mark multiconnect 04 as done"
- "add a task to multiconnect for the button redesign"
- "check dependencies for multiconnect"
- "create a new task set called widgets"
- "resequence multiconnect — swap 03 and 04"
- "tasks show multiconnect 05"
Routes to: references/task-management.md
Task sets location: .Codex/docs/tasks/<name>/
Answering Questions
Intent: Finding information in docs or codebase
Examples:
- "how do the WASM bindings work?"
- "where is the disk controller code?"
- "what tools use the CPU functions?"
Routes to: references/query.md
Architecture
Progressive Disclosure: Each command loads only the reference documentation it needs, avoiding context bloat.
Documentation Sources:
docs/app-tools.md- AG-UI app tool registry and patternsdocs/agent-tools.md- MCP agent tool registry and patternsdocs/bindings.md- WASM interface documentationdocs/llm-txt.md- LLM integration documentationdocs/architecture.md- System architecture overview
Reference Documents: Detailed instructions for each sub-skill in references/
Implementation
The skill dispatcher reads the command and routes to the appropriate reference:
- Parse command (
app-tool,agent-tool,docs,impact,update, or question) - Load only the relevant reference document
- Execute the sub-skill with the reference as context
- Generate outputs in
docs/as needed
Files
.Codex/skills/emma/
├── SKILL.md # This file (skill index)
├── references/ # Sub-skill instructions
│ ├── new-app-tool.md # Create AG-UI app tools
│ ├── new-agent-tool.md # Create MCP agent tools
│ ├── update.md # Update any documentation
│ ├── impact.md # Analyze change impacts
│ ├── reference.md # Load docs into context
│ ├── create-pr.md # Generate GitHub PR descriptions
│ ├── task-management.md # Manage development task sets
│ └── query.md # Query docs
└── docs/ # Important reference docs
├── styles.md # Coding styles & conventions
├── bindings.md # WASM bindings reference
├── architecture.md # Architecture overview
├── app-tools.md # App tool registry
└── agent-tools.md # Agent tool registry
.Codex/docs/tasks/<name>/ # Development task sets (one folder per project)
├── __ - tasks.md # Manifest: fast index for listing (single file read)
├── 00-overview.md # Goals & decisions
└── 01-nn-*.md # Individual task files (NN-kebab-title.md)
Intent Detection & Routing
When invoked, emma:
- Parses user request to detect intent
- Routes to appropriate reference:
- Tool creation keywords →
new-app-tool.mdornew-agent-tool.md - Update/doc keywords →
update.md - Impact/affect/change keywords →
impact.md - PR/pull request keywords →
create-pr.md - Reference keywords →
reference.md - Task management keywords →
task-management.md - Question patterns →
query.md
- Tool creation keywords →
- Loads only relevant reference (progressive disclosure)
- Executes with context from the reference
- Returns results (code, docs, analysis, PR descriptions)
Intent Detection Patterns
Tool Creation:
- Keywords: create, make, build, add, new, tool
- Context: "app tool", "agent tool", "MCP tool", "frontend tool"
Documentation:
- Keywords: update, generate, document, write, refresh
- Context: "AGENTS.md", "README", "docs", "release notes", "bindings"
Impact Analysis:
- Keywords: impact, affect, break, change, sync, update
- Context: "WASM", "tools", "agent", "binding", "function"
Reference / Session Restore:
- Keywords: reference, apply, load, restore, use
- Context: "core files", "styles", "bindings", "architecture", "conventions", "session"
- "restore core files" / "load core files" → always loads
core-files(all 7 files)
Pull Request Creation:
- Keywords: PR, pull request, github, description, create, make, generate
- Context: "for these features", "recent changes", "unpushed commits"
Task Management:
- Keywords: tasks, task, todo, backlog, track, sequenc, resequence, mark done, check deps
- Context: task set names (e.g. "multiconnect"), "list tasks", "add task", "create task set", "what's next", "mark as done", "check dependencies"
- Routes to:
references/task-management.md
Questions:
- Patterns: how, what, where, when, why, can I, does it
- Fallback: anything not matching above intents
This keeps each invocation lightweight while maintaining comprehensive capabilities.
Signals
- GitHub stars
- 20
- Forks
- 1
- Last commit
- Oct 2026
Ahel review
K1info
remote-installer-piped-to-shell (in docs/agent-setup.md)K1binfo
installs-packages (in docs/agent-setup.md)K1binfo
installs-packages (in docs/setup.examples[macos].md)K1binfo
installs-packages (in docs/setup.md)
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Item type
- skill
- Key
emma- Source
- github.com/mikedaley/web-a2e
More in Web & browsing
Skill · browser-use
More in Web & browsingwebapp-testing
Skill · anthropics
More in Web & browsingplaywright-cli
Skill · microsoft
More in Web & browsingbenchmark
Skill · affaan-m
More in Web & browsingopen-source
Skill · browser-use
More in Web & browsingdeploy-to-vercel
Skill · vercel-labs
More in Web & browsing