{"id":51862152,"url":"https://github.com/majiayu000/profile-control-plane","last_synced_at":"2026-07-24T09:02:22.290Z","repository":{"id":371699395,"uuid":"1299986260","full_name":"majiayu000/profile-control-plane","owner":"majiayu000","description":"Compile a GitHub identity into an animated, dark/light, self-hosted profile README.","archived":false,"fork":false,"pushed_at":"2026-07-16T10:09:37.000Z","size":136,"stargazers_count":52,"open_issues_count":1,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-16T12:04:43.378Z","etag":null,"topics":["codex-skill","generator","github-profile","readme","svg","typescript"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/majiayu000.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","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-07-14T03:58:04.000Z","updated_at":"2026-07-16T09:00:06.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/majiayu000/profile-control-plane","commit_stats":null,"previous_names":["majiayu000/profile-control-plane"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/majiayu000/profile-control-plane","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/majiayu000%2Fprofile-control-plane","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/majiayu000%2Fprofile-control-plane/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/majiayu000%2Fprofile-control-plane/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/majiayu000%2Fprofile-control-plane/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/majiayu000","download_url":"https://codeload.github.com/majiayu000/profile-control-plane/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/majiayu000%2Fprofile-control-plane/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35835401,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-24T02:00:07.870Z","response_time":62,"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":["codex-skill","generator","github-profile","readme","svg","typescript"],"created_at":"2026-07-24T09:02:21.535Z","updated_at":"2026-07-24T09:02:22.276Z","avatar_url":"https://github.com/majiayu000.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Profile Control Plane\n\n[![CI](https://github.com/majiayu000/profile-control-plane/actions/workflows/ci.yml/badge.svg)](https://github.com/majiayu000/profile-control-plane/actions/workflows/ci.yml)\n[![MIT](https://img.shields.io/badge/license-MIT-00A7D1.svg)](LICENSE)\n[![Node](https://img.shields.io/badge/node-%3E%3D20-E84A8A.svg)](package.json)\n\nCompile a GitHub identity into an animated, dark/light, self-hosted profile README.\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Profile Control Plane example\" src=\"examples/lifcc/output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\nMost profile generators render a banner or assemble remote widgets. Profile Control Plane turns your\nrepositories into a coherent visual system: a hero, a project map, flagship work, and an expandable module\nregistry—all generated from one reviewed YAML file and one of sixteen distinct templates.\n\n## What you get\n\n- One declarative `profile.yaml` as the authoring source of truth.\n- Sixteen templates, each producing four SVGs with native dark/light variants and reduced-motion support.\n- A generated GitHub-safe `README.md` with escaped metadata and optional star badges.\n- `init`, `build`, `preview`, and `check` commands with typed, fail-closed errors.\n- A bundled [`design-github-profile`](skills/design-github-profile/SKILL.md) agent skill for evidence-backed\n  positioning, profile archetype selection, visual review, and safe staging.\n- No hosted image API, database, analytics, or required token at render time.\n\n## Template gallery\n\nEvery preview below is generated from the same\n[`examples/lifcc/profile.yaml`](examples/lifcc/profile.yaml). GitHub selects the matching dark or light asset\nautomatically.\n\n### Control Plane\n\nThe default Control Plane hero is shown at the top of this README.\n\n\u003cdetails\u003e\n\u003csummary\u003eView the closed-loop architecture map\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Control Plane architecture map\" src=\"examples/lifcc/output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Command Deck (`command-deck`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/command-deck-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/command-deck-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Command Deck template\" src=\"examples/lifcc/command-deck-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the execution deck\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/command-deck-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/command-deck-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Command Deck execution map\" src=\"examples/lifcc/command-deck-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Signal Grid (`signal-grid`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/signal-grid-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/signal-grid-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Signal Grid template\" src=\"examples/lifcc/signal-grid-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the signal topology\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/signal-grid-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/signal-grid-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Signal Grid topology map\" src=\"examples/lifcc/signal-grid-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Editorial\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/editorial-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/editorial-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Editorial template\" src=\"examples/lifcc/editorial-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the working index\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/editorial-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/editorial-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Editorial working index\" src=\"examples/lifcc/editorial-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Developer Workbench (`bento-grid`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/bento-grid-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/bento-grid-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Developer Workbench template\" src=\"examples/lifcc/bento-grid-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the connected build map\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/bento-grid-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/bento-grid-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Developer Workbench build map\" src=\"examples/lifcc/bento-grid-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Terminal\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/terminal-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/terminal-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Terminal template\" src=\"examples/lifcc/terminal-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the process tree\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/terminal-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/terminal-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Terminal process tree\" src=\"examples/lifcc/terminal-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Blueprint\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/blueprint-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/blueprint-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Blueprint template\" src=\"examples/lifcc/blueprint-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the assembly drawing\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/blueprint-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/blueprint-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Blueprint assembly drawing\" src=\"examples/lifcc/blueprint-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Constellation\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/constellation-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/constellation-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Constellation template\" src=\"examples/lifcc/constellation-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the star chart\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/constellation-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/constellation-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Constellation star chart\" src=\"examples/lifcc/constellation-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Metro Map (`metro`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/metro-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/metro-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Metro Map template\" src=\"examples/lifcc/metro-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the network map\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/metro-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/metro-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Metro network map\" src=\"examples/lifcc/metro-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Monolith (`monolith`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/monolith-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/monolith-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Monolith template\" src=\"examples/lifcc/monolith-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the typographic route\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/monolith-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/monolith-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Monolith typographic route\" src=\"examples/lifcc/monolith-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Interlace (`interlace`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/interlace-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/interlace-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Interlace template\" src=\"examples/lifcc/interlace-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the project weave\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/interlace-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/interlace-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Interlace project weave\" src=\"examples/lifcc/interlace-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Cipher Print (`cipher-print`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/cipher-print-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/cipher-print-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Cipher Print template\" src=\"examples/lifcc/cipher-print-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the engraved index\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/cipher-print-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/cipher-print-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Cipher Print engraved index\" src=\"examples/lifcc/cipher-print-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Field Specimen (`field-specimen`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/field-specimen-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/field-specimen-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Field Specimen template\" src=\"examples/lifcc/field-specimen-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the classification plate\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/field-specimen-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/field-specimen-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Field Specimen classification plate\" src=\"examples/lifcc/field-specimen-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Patch Bay (`patchbay`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/patchbay-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/patchbay-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Patch Bay template\" src=\"examples/lifcc/patchbay-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the cable routing\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/patchbay-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/patchbay-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Patch Bay cable routing\" src=\"examples/lifcc/patchbay-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Cartograph (`cartograph`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/cartograph-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/cartograph-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Cartograph template\" src=\"examples/lifcc/cartograph-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the contour survey\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/cartograph-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/cartograph-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Cartograph contour survey\" src=\"examples/lifcc/cartograph-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n### Foundry (`foundry`)\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/foundry-output/assets/hero-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/foundry-output/assets/hero-light.svg\"\u003e\n  \u003cimg alt=\"Foundry template\" src=\"examples/lifcc/foundry-output/assets/hero-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eView the casting floor\u003c/summary\u003e\n\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"examples/lifcc/foundry-output/assets/closed-loop-dark.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"examples/lifcc/foundry-output/assets/closed-loop-light.svg\"\u003e\n  \u003cimg alt=\"Foundry casting floor\" src=\"examples/lifcc/foundry-output/assets/closed-loop-light.svg\" width=\"100%\"\u003e\n\u003c/picture\u003e\n\n\u003c/details\u003e\n\n## Quick start\n\nThe package is currently distributed from GitHub. Build and link the CLI locally:\n\n```bash\ngit clone https://github.com/majiayu000/profile-control-plane.git\ncd profile-control-plane\nnpm ci\nnpm link\n```\n\nCreate a starter configuration from public GitHub metadata:\n\n```bash\nprofilectl init YOUR_GITHUB_USERNAME\nprofilectl check\nprofilectl preview --all-templates\n```\n\nOpen the printed comparison page, choose a direction, set `theme.preset`, and refine `profile.yaml` until it\ntells the right story. Then build:\n\n```bash\nprofilectl build --out .profile-output\n```\n\nIf the unauthenticated GitHub API is rate-limited, provide an existing token only for `init`:\n\n```bash\nGITHUB_TOKEN=your_token profilectl init YOUR_GITHUB_USERNAME\n```\n\nThe token is read from the environment and is never written to the configuration or generated assets.\n\n## Configuration\n\n```yaml\nversion: 1\ngithub:\n  username: octocat\nidentity:\n  name: Octocat\n  headline: AGENT INFRASTRUCTURE\n  tagline: Building the systems around coding agents.\ntheme:\n  preset: control-plane\n  primary: \"#00A7D1\"\n  secondary: \"#E84A8A\"\nlayers:\n  - name: DIRECT\n    project: agent-cli\n    description: The primary execution surface\n    tone: primary\nflagships:\n  - repo: agent-cli\n    role: EXECUTE\n    description: A fast, inspectable coding agent.\n    tone: primary\nmodule_groups: []\nsettings:\n  show_stars: true\n  show_badges: true\n```\n\nThe complete contract is [`schemas/profile.schema.json`](schemas/profile.schema.json). The starter importer\nuses factual GitHub names, descriptions, languages, stars, and timestamps. It deliberately emits generic\n`SYSTEM 01` / `PROJECT 01` labels because semantic architecture should be reviewed, not hallucinated.\n\nSee the curated [lifcc configuration](examples/lifcc/profile.yaml) and its [generated output](examples/lifcc/output/README.md).\n\n### Templates\n\n| Preset           | Best fit                                          | Visual language                         |\n| ---------------- | ------------------------------------------------- | --------------------------------------- |\n| `control-plane`  | Infrastructure, agent systems, connected tooling  | Animated control room and systems loop  |\n| `command-deck`   | Operations-heavy systems and flagship execution   | Mission console and command bus         |\n| `signal-grid`    | Networked projects and relationship-heavy systems | Signal topology and connected mesh      |\n| `editorial`      | Maintainers, researchers, selected body of work   | Technical journal and working index     |\n| `bento-grid`     | Product builders and modular project portfolios   | Connected workbench and signal map      |\n| `terminal`       | CLI tools, daemons, and hands-on builders         | Live shell session and process tree     |\n| `blueprint`      | Spec-driven engineering and deliberate systems    | Engineering drawing and assembly map    |\n| `constellation`  | Broad portfolios with a few standout projects     | Animated star atlas and signal chain    |\n| `metro`          | Many repositories grouped into clear domains      | Transit network with moving train paths |\n| `monolith`       | Focused specialists and assertive bodies of work  | Internationalist typographic poster     |\n| `interlace`      | Work connected across disciplines or layers       | Woven bands and a project loom          |\n| `cipher-print`   | Meticulous systems and high-craft maintainers     | Guilloché engraving and edition marks   |\n| `field-specimen` | Exploratory work and branching research           | Natural-history plate and taxonomy      |\n| `patchbay`       | Tools wired into one routed signal path           | Modular patch panel and animated cables |\n| `cartograph`     | Broad work charted across domains and terrain     | Topographic survey and contour index    |\n| `foundry`        | Hardened tools forged, cast, and shipped          | Casting floor with molten pour          |\n\nThe bundled agent skill can recommend a preset from repository evidence. The user remains the decision\nmaker: `profilectl preview --all-templates` renders the same configuration in all sixteen directions before\nanything is built or staged.\n\n## Commands\n\n| Command                              | Purpose                                                                |\n| ------------------------------------ | ---------------------------------------------------------------------- |\n| `profilectl init \u003cusername\u003e`         | Import public metadata into a reviewable starter config.               |\n| `profilectl build`                   | Compile README and SVGs into a dedicated output directory.             |\n| `profilectl preview`                 | Serve the selected template in dark/light mode at `127.0.0.1`.         |\n| `profilectl preview --all-templates` | Compare every template using the same configuration.                   |\n| `profilectl check`                   | Validate schema, generated XML, references, and optional online links. |\n\nUse `--help` on any command for options. `build --force` refuses to replace the current directory, a\nfilesystem root, or any directory containing `.git`.\n\n## Publish safely\n\nGenerated output is intentionally separate from your profile repository. On a new branch in the\n`USERNAME/USERNAME` repository, copy only these files:\n\n```text\n.profile-output/README.md  -\u003e README.md\n.profile-output/assets/    -\u003e assets/\n```\n\nReview the rendered branch and diff before merging. The CLI never commits, pushes, changes pins, or merges\nto `main`.\n\n## Agent skill\n\nCopy the bundled skill into your agent skill directory, or reference it from this repository:\n\n```bash\ncp -R skills/design-github-profile ~/.codex/skills/\n```\n\nThen ask: `Use $design-github-profile to redesign my GitHub profile.` The skill audits existing profile\nfiles, separates verified facts from interpretations and user intent, proposes an evidence-backed profile\ndirection, and evaluates the rendered result before preparing a preview branch. Detailed archetypes, visual\nguidelines, and the publication rubric load only when the task needs them.\n\nThe agent recommends a narrative and a supported preset, explains its evidence, and can render all templates\nfor user choice. If the desired visual direction is outside the declared presets, it reports the capability\ngap instead of inventing a `theme.preset` or forcing the account into an unsupported metaphor.\n\n## Design and safety\n\nThe compiler is pure: validated config goes in; static strings come out. Network and filesystem behavior\nlive in explicit adapters. SVG output is XML-validated and rejected if it contains script elements, event\nattributes, or JavaScript URLs. Files are staged before an atomic directory replacement.\n\nRead the [architecture foundation](docs/architecture.md), [security policy](SECURITY.md), and\n[contribution guide](CONTRIBUTING.md) for details.\n\n## Development\n\n```bash\nnpm ci\nnpm run check\nnpm pack --dry-run\n```\n\nThe test gate requires at least 80% line, statement, function, and branch coverage.\n\n## License\n\n[MIT](LICENSE) © lifcc\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmajiayu000%2Fprofile-control-plane","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmajiayu000%2Fprofile-control-plane","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmajiayu000%2Fprofile-control-plane/lists"}