{"id":50758019,"url":"https://github.com/nodeg/em-ai","last_synced_at":"2026-06-11T07:02:51.841Z","repository":{"id":360778676,"uuid":"1251645847","full_name":"nodeg/em-ai","owner":"nodeg","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-09T19:49:20.000Z","size":91,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-09T21:22:23.558Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nodeg.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-27T19:31:04.000Z","updated_at":"2026-06-09T19:48:39.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/nodeg/em-ai","commit_stats":null,"previous_names":["nodeg/em-ai"],"tags_count":0,"template":false,"template_full_name":"jcesarperez/claude-em","purl":"pkg:github/nodeg/em-ai","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodeg%2Fem-ai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodeg%2Fem-ai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodeg%2Fem-ai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodeg%2Fem-ai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nodeg","download_url":"https://codeload.github.com/nodeg/em-ai/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodeg%2Fem-ai/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34186385,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-11T07:02:51.078Z","updated_at":"2026-06-11T07:02:51.834Z","avatar_url":"https://github.com/nodeg.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EM AI\n\n**EM AI turns Claude into an Engineering Manager operating system.**\n\nNot a generic AI. Not a blank prompt.\n\nA context-aware, opinionated system that understands:\n- your team\n- your manager style\n- your context\n- how you run engineering\n\n## Why Claude EM\n\nIt comes with:\n1. Persistent context → **your team** + **your way of working**\n2. Reusable workflows → **skills** that support real EM tasks\n\nClaude EM is built for **day-to-day EM work**:\n- Plan initiatives with clear scope and trade-offs\n- Write epics and stories that engineers can actually build\n- Analyze IC performance using real data (Jira + GitHub)\n- Prepare 1:1s with context and intent\n- Think through org and leadership decisions\n\nIt is intentionally **CLI-first**: faster, more predictable, and more cost-efficient (tokens).\n\nWorks out of the box with **Jira** and **GitHub**. Other tools can be added via CLI scripts or MCP servers.\n\n---\n\n## Quick start (2 minutes)\n\n1. Clone this repository.\n\n2. Install Claude Code:\n\n```bash\nnpm install -g @anthropic-ai/claude-code\n```\n\n3. Add your team context and EM style:\n\n* Copy `data/team_example.md` → `data/team_myteam.md` and fill in your team and members.\n* Copy `data/em_style_example.md` → `data/em_style.md` and fill in your style.\n\n4. Open Claude in your workspace:\n\n```bash\nclaude\n```\n\n5. Try your first prompt:\n\n\u003e Analyze doms last 30 days, please.\n\n---\n\n## Example use cases\n\n* Plan an initiative\n  \u003e We have recurring CI flakiness slowing down delivery. Plan an initiative to reduce it\n\n* Analyze IC activity\n  \u003e Analyze Maria's last 30 days\n\n* Prepare a 1:1\n  \u003e Prepare a 1:1 with Ana. She’s delivering less lately and seems disengaged. I want to understand what's going on\n\n* Write a strategy\n  \u003e Write a strategy to reduce operational load on the team while maintaining reliability\n\n* Mentor\n  \u003e I'm considering reorganizing the team into two squads. Help me think through trade-offs and risks\n\n* Prepare the daily meeting\n  \u003e Give me a daily-ready view of the team's board\n\n* Generate a user story map\n  \u003e Generate a user story map from this PRD: [paste PRD]\n\n* Check an epic\n  \u003e Check this epic\n\n* Write a delivery epic\n  \u003e Write an epic to implement rate limiting in our API. Include scope, risks, and definition of done\n\n* Write a discovery epic\n  \u003e We have performance issues in the frontend. Write a discovery epic to understand root causes and options\n \n ---\n\n## How it works\n\n* **CLAUDE.md** defines how Claude should behave\n* **EM style** (`data/em_style.md`) defines your personal way of working\n* **Skills** (`.claude/skills/`) are reusable prompts for real EM tasks\n* **Team context** (`data/team_*.md`) defines your team\n* **Data** (`data/`) stores shared information (Jira, GitHub, etc.)\n* **Initiatives** are folders where work, analysis, and outputs live\n* **CLI-first approach**: prefers CLI tools over MCP servers to stay fast, predictable, and low-cost in terms of tokens\n\n---\n\n## Skills\n\n| Skill | What it does |\n|---|---|\n| `/check-gh-board` | Daily health check of a GitHub project board (v2): flow, people load, stuck/blocked issues, and bugs at risk of breaching SLA |\n| `/check-epic` | Analyze an Epic's definition, decomposition, and execution using Jira data |\n| `/check-ic-activity` | Analyze an IC's delivery, quality, and collaboration using Jira + GitHub data |\n| `/mentor-me` | Think through a leadership situation with an Engineering Director mindset |\n| `/one-on-one` | Prepare for a 1:1 — situation read, key questions, risks, and opening line |\n| `/plan-initiative` | Structure a rough idea into a scoped initiative with epics and next steps |\n| `/us-mapping` | Generate a User Story Map from a PRD or Figma design |\n| `/write-epic-build` | Write a delivery epic with scope, risks, and definition of done |\n| `/write-epic-technical-discovery` | Write a discovery epic focused on reducing uncertainty and enabling a decision |\n| `/write-strategy` | Draft a strategy doc (Rumelt + Larson) with diagnosis, policies, and actions |\n| `/write-us` | Draft a user story following INVEST and vertical slicing |\n| `/write-vision` | Draft a vision doc with value proposition, capabilities, and constraints |\n\n---\n\n## Workspace structure\n\n```bash\nem-ai/\n├── data/                       # Shared data across initiatives\n│   ├── team_{name}.md          # Team context files\n│   ├── em_style.md             # Engineering Manager style\n│   ├── [source]/               # One folder per data source (GitHub for example)\n│   └── tmp/                    # Temporary files\n└── [initiative-name]/          # One folder per initiative\n    ├── data/                   # Initiative-specific data\n    ├── tmp/                    # Temporary files\n    ├── scripts/                # Analysis and processing\n    └── output/                 # Results and reports\n```\n\n---\n\n## Setup (full)\n\n### 1. Create your workspace\n\nFork or simply clone this repository. This gives you a fully independent workspace you can customize.\n\n---\n\n### 2. Install Claude Code\n\nCheck the [official docs](https://docs.anthropic.com/claude-code) and use your preferred installation method.\n\n---\n\n### 3. Configure your team and EM profile\n\nAdd\n\n* Your EM style\n* Your team details\n* Your expectations from Claude\n* Your way of working\n\nby\n\n* Copying `data/team_example.md` → `data/team_myteam.md` and fill in your team and member details.\n* Copying `data/em_style_example.md` → `data/em_style.md` and fill in your style.\n\n---\n\n### 4. Install CLI tools\n\nClaude EM is designed to work primarily with CLI tools instead of MCP, as they are faster and more cost-efficient.\n\n**GitHub CLI (`gh`)**\n\n```bash\nbrew install gh\ngh auth login\n```\n\n\u003e Docs: https://cli.github.com\n\n---\n\n### 5. Configure credentials\n\nCreate a `.env.local` file at the workspace root (git-ignored):\n\n```bash\nGITHUB_TOKEN=\"your-github-token\"\n\n```\n\nGetting credentials:\n- **GitHub token**: https://github.com/settings/tokens (scopes: `repo`, `read:org`, `read:user`)\n\n---\n\n### 7. (Optional) Configure MCP servers\n\nMCP servers give Claude direct access to Jira, GitHub, and Figma without CLI or scripts.\n\n```bash\nclaude mcp add --plugin atlassian\nclaude mcp add --plugin github\nclaude mcp add --plugin figma\n```\n\n### 8. (Optional) Get the most out of 1:1s\n\nThe `/one-on-one` skill works with nothing but a one-line prompt, but it gets sharper the more context you give it through the team file.\n\n**Per-person 1:1 doc.** Give any member a living doc and the skill will read it when preparing the conversation — open topics, agreed actions, signals to watch, goals, and what happened in past 1:1s:\n\n* Add a `1:1 file:` link to the member in `data/team_{your-team}.md`\n* The value can be a URL or a path, and the doc can be in **any format** — the skill adapts to whatever's there\n* For a suggested starting point, see `.claude/skills/one-on-one/references/person-file-example.md`\n* It's fully optional: if it's missing or unreachable, the skill simply ignores it\n\n**Career Frameworks.** Fill in the `## Career Frameworks` section of the team file with links (per level) to your expectations docs. The skill reads the one matching the member's seniority when the conversation turns to expectations or growth.\n\n---\n\n## Notes\n\n* You don’t need full setup to start — Quick Start is enough\n* CLI tools and MCP improve automation but are optional\n* The system works best when your team context is accurate and up to date\n\n---\n\n## Contributing\n\nContributions are welcome:\n\n* Feedback from real usage\n* Suggestions\n* New skills\n* Support for additional tools\n\n---\n\n## Origin\n\nOriginal project called [claude-em](https://github.com/jcesarperez/claude-em)\ndeveloped by Julio César Pérez Arques.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodeg%2Fem-ai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnodeg%2Fem-ai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodeg%2Fem-ai/lists"}