{"id":50687748,"url":"https://github.com/esaldgut/ai-native-engineering-workspace","last_synced_at":"2026-06-09T00:04:25.684Z","repository":{"id":362602183,"uuid":"1259928056","full_name":"esaldgut/ai-native-engineering-workspace","owner":"esaldgut","description":"AI-native engineering workspace — 42 Claude Code agent skills, platform-base workflow docs, and a freshness system that re-verifies each pattern against vendor docs.","archived":false,"fork":false,"pushed_at":"2026-06-05T03:20:43.000Z","size":353,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"develop","last_synced_at":"2026-06-05T04:15:49.594Z","etag":null,"topics":["agent-skills","ai-native","aws","claude-code","kotlin","mcp","swift","workflow-automation"],"latest_commit_sha":null,"homepage":null,"language":null,"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/esaldgut.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":null,"support":null,"governance":null,"roadmap":"ROADMAP.md","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-06-05T02:04:03.000Z","updated_at":"2026-06-05T03:20:44.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/esaldgut/ai-native-engineering-workspace","commit_stats":null,"previous_names":["esaldgut/ai-native-engineering-workspace"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/esaldgut/ai-native-engineering-workspace","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esaldgut%2Fai-native-engineering-workspace","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esaldgut%2Fai-native-engineering-workspace/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esaldgut%2Fai-native-engineering-workspace/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esaldgut%2Fai-native-engineering-workspace/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/esaldgut","download_url":"https://codeload.github.com/esaldgut/ai-native-engineering-workspace/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esaldgut%2Fai-native-engineering-workspace/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34085335,"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-08T02:00:07.615Z","response_time":111,"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":["agent-skills","ai-native","aws","claude-code","kotlin","mcp","swift","workflow-automation"],"created_at":"2026-06-09T00:04:18.132Z","updated_at":"2026-06-09T00:04:20.682Z","avatar_url":"https://github.com/esaldgut.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# AI-Native Engineering Workspace\n\nA public library of **42 reusable Claude Code Agent Skills**, the **platform-base workflow docs**\nthey extend, and a **freshness system** that re-verifies each pattern against the official docs it\ncites.\n\nEach skill is a generic extraction from production engineering, rewritten from scratch (not\ncopy-pasted) and verified against vendor documentation: Apple Developer, AWS, Android, Anthropic.\nEvery skill records its own provenance: which sources it was checked against, when, at which\nversion, and when to re-check it.\n\nScope: working patterns and conventions across Apple (Swift 6 / iOS 26), AWS (Lambda Go / CDK),\nAndroid (Kotlin / Compose / KMP), and Claude Code / MCP. Not a tutorial collection — these are\nthe patterns an AI-native engineer applies, published for reuse.\n\n---\n\n## What's inside\n\n| Area | Count | What it covers |\n|------|------:|----------------|\n| **`global-skills/apple/`** | 13 | SwiftUI iOS 26: Liquid Glass, adaptive layouts, native UX, chat / feed / marketplace / social-graph UI; Clean Architecture + error patterns + feature scaffolding; on-device AI (Foundation Models); an append-only Apple anti-pattern registry |\n| **`global-skills/apple-auth/`** | 6 | Post-quantum CryptoKit, auth security audit + checklist, performance benchmarks, Swift Testing patterns — provider-agnostic (Cognito / Firebase / Auth0 as examples) |\n| **`global-skills/aws-go/`** | 8 | AWS SDK Go v2 version policy, canonical error handling, Lambda cold-start segregation, refactor blast-radius audit, MongoDB TTL correctness, CDK drift detection, adversarial pre-build audit, provider-API property verification |\n| **`global-skills/android/`** | 5 | Compose Clean Architecture + feature scaffolding, JUnit5/Turbine/MockK testing, security checklist (DataStore + Tink + Keystore), Kotlin Multiplatform extraction |\n| **`global-skills/claude-code-workflow/`** | 6 | Project bootstrap, lesson-capture pipeline, build-sync pipeline, MCP orchestration + the Android-specific twins |\n| **`global-skills/writing/`** | 1 | A canon for technical writing in Spanish (no spanglish, no voseo, technical terms kept in English) with a detection pass |\n| **`global-skills/meta/`** | 3 | Skills *about* skills: extraction methodology, freshness audit, dossier-driven update |\n| **`workflow-docs/`** | 13 | The generic platform base (Apple, Android, Expo, AWS, Next.js, MCP, Chrome, TypeScript, Shell, Kali, + the platform premise). Skills extend these. |\n| **`reference-projects/`** | 2 | Sanitized architecture docs for a native iOS app and a native Android app — Clean Architecture, tech-research decisions, iOS 26 UX patterns |\n\n**Total: 42 skills + 13 base docs**, roughly 14,000 lines of documented engineering.\n\n---\n\n## The idea: platform base + extensions\n\nA project should never start from an ambiguous context. The flow this repo encodes:\n\n```\nworkflow-docs/  (generic platform base)         ← context loads here first\n        │  a project's CLAUDE.md @imports the relevant base docs\n        ▼\nproject CLAUDE.md + docs/\u003cDOMAIN\u003e_EXTENSIONS.md  ← project-specific detail lives here\n```\n\nThe base docs are generic and reusable across any project of the same kind. A specific project\n**extends** them — it never edits the base to inject its own bundle IDs, account IDs, or\narchitecture. The `project-init` skill automates this bootstrap; `PLATFORM_BASE.md` states the\nfull premise.\n\n---\n\n## The freshness system (why this stays trustworthy)\n\nTechnical patterns for fast-moving platforms rot in months. During this repo's own research,\nfive patterns were already stale or mythical at the moment of verification:\n\n| Pattern | Naive assumption | Verified reality |\n|---|---|---|\n| CDK drift | \"use `aws cloudformation detect-stack-drift` by hand\" | `cdk drift` command (CDK CLI 2.1017.0, May 2025) |\n| Android secrets | `EncryptedSharedPreferences` | deprecated → DataStore + Tink + Keystore |\n| Hilt + Compose | `hilt-navigation-compose` | renamed to `hilt-lifecycle-viewmodel-compose` (Hilt 1.3.0) |\n| Coroutine tests | `runBlockingTest` | deprecated → `runTest` (kotlinx-coroutines-test 1.6+) |\n| Constant-time compare | `CryptoKit.timingSafeEqual` | **never existed** — use `HMAC.isValidAuthenticationCode` |\n\nSo every skill carries a `freshness` block in its frontmatter: cited sources with versions, a\nverification date, a re-check trigger, and a status. The **`skill-pattern-freshness-audit`** skill\nreads those blocks, re-verifies each cited API against current docs, and sets each status to\n`current`, `needs-recheck`, `stale`, or `superseded` with the citation that proves it. The\n**`dossier-driven-skill-update`** skill repairs what the audit flags. The contract is in\n[`global-skills/FRESHNESS_SPEC.md`](global-skills/FRESHNESS_SPEC.md).\n\nThe detect-then-repair loop makes drift a queryable signal rather than something a reader finds in\nproduction.\n\n---\n\n## What keeps this library dynamic: `lessongate`\n\nA skills library that's a snapshot rots. This one is fed by an agent.\n\n[**`lessongate`**](https://github.com/esaldgut/lessongate) is a local Go runtime agent that watches a\nprivate project's merged pull requests, asks Claude which of the lessons captured from them are\n**generalizable** (a reusable pattern, not business-specific), sanitizes each through an NDA gate,\nand opens a **draft pull request** to this repository for human review. The library upstreams from\nproduction engineering instead of being hand-curated once.\n\nThe relationship is the point: one repo is the **agent** that produces knowledge; the other is the\n**library** it feeds. That separation is also what makes the flow demonstrable — an agent that opens\nPRs to a sibling repo, not a repo editing itself.\n\nThe agent is built to a production bar, and its design choices are the same ones this library\ndocuments:\n\n- The confidentiality control is a **deterministic gate** (deny-list + structural regex + a template\n  allow-list, tested against a golden corpus with a seeded canary), not an LLM. The Claude verify\n  pass is extra recall only — it can downgrade *safe → unsafe*, never the reverse.\n- Sanitization runs **before** anything leaves the process; the agent consumes curated lesson text,\n  never raw diffs.\n- The dependency stack was **verified against live sources**, not assumed — which overturned several\n  defaults (e.g. `go-github` v88's `NewClient` now returns an error; Claude Opus 4.8 is\n  adaptive-thinking-only, so determinism comes from forced structured output, not a temperature knob).\n- Built across six TDD phases; the security-critical path runs deterministically offline in CI.\n\nIt's the working proof of the premise this repo states: that AI-native engineering means building\nthe tooling that keeps your knowledge current, not just writing the knowledge down.\n\n---\n\n## How a skill is structured\n\nEvery `SKILL.md` follows the same shape — a focused, single-job Agent Skill:\n\n```yaml\n---\nname: swift-liquid-glass-design-system-ios26\ndescription: \u003e-\n  Apply iOS 26 Liquid Glass to custom SwiftUI views the canonical way … Use when building\n  or restyling SwiftUI surfaces that target iOS 26+ …\nversion: \"1.0.0\"\nfreshness:\n  verified_against:\n    - source: \"Apple Developer — View.glassEffect(_:in:)\"\n      url: \"https://developer.apple.com/documentation/swiftui/view/glasseffect(_:in:)\"\n      version: \"iOS 26.0\"\n  verified_on: \"2026-06-03\"\n  recheck_after: { trigger: \"WWDC26 keynote\", or_date: \"2026-12-01\" }\n  decay_risk: medium\n  status: current\n---\n```\n\n…followed by: when to invoke (with trigger signals), a table of **verified** APIs, the\nload-bearing rules with code, a canonical example using generic names (`MyApp`,\n`com.example.app`), a decision aid (when *not* to use it), cross-links, sources, and a\n\"Last verified\" footer.\n\n[`global-skills/apple/swift-liquid-glass-design-system-ios26/`](global-skills/apple/swift-liquid-glass-design-system-ios26/SKILL.md)\nis the reference example for the format.\n\n---\n\n## Quality bar\n\nEach skill meets every one of these:\n\n- **Verified, not assumed.** Every API in a \"canonical APIs\" table was confirmed against the\n  vendor's live docs. That verification caught more than a dozen errors during authoring: wrong\n  version numbers, renamed artifacts, a nonexistent crypto symbol (`CryptoKit.timingSafeEqual`),\n  and an API URL that returned 404.\n- **At least two cited sources**, one of them a primary vendor or standards doc, each with a\n  resolving URL and a version.\n- **Anti-sterilization.** Every body names at least one concrete public API, which anchors the\n  pattern and gives the freshness audit a literal symbol to re-check.\n- **One skill, one job.** No mega-skills.\n- **Honest about canon.** Where a domain is still emerging (Claude Code / MCP), skills mark which\n  patterns are documented-canonical versus opinionated convention.\n- **Zero confidential context.** No client or employer identifiers anywhere; these are generic\n  patterns, not an extract of any private codebase.\n\n---\n\n## Using these skills\n\nDrop a skill folder into a project's (or your user-level) `.claude/skills/` directory. Claude Code\nauto-invokes it when its `description` matches the situation, or you can invoke it explicitly with\n`/\u003cskill-name\u003e`. The `freshness` and `version` keys are inert to the loader (it reads only `name`\nand `description`) — they exist for humans and for the audit tooling here.\n\nTo check whether a skill has drifted before you rely on it:\n\n```\n/skill-pattern-freshness-audit \u003cdomain\u003e     # e.g. apple, aws-go, android\n```\n\n---\n\n## Layout\n\n```\nai-native-engineering-workspace/\n├── README.md                  ← you are here\n├── LICENSE                    ← MIT\n├── workflow-docs/             ← 13 generic platform-base docs + PLATFORM_BASE.md\n├── global-skills/\n│   ├── FRESHNESS_SPEC.md       ← the provenance contract every skill follows\n│   ├── meta/                   ← 3 skills about skills (extract / audit / update)\n│   ├── apple/                  ← 13\n│   ├── apple-auth/             ← 6\n│   ├── aws-go/                 ← 8\n│   ├── android/                ← 5\n│   ├── claude-code-workflow/   ← 6\n│   └── writing/                ← 1\n└── reference-projects/         ← sanitized iOS + Android architecture docs\n```\n\n---\n\n## Notes\n\n- **Bilingual.** This README and the skills are in English; some platform-base workflow docs keep\n  their original Spanish body. Each skill's `description` (the part Claude reads to decide whether\n  to fire) is English.\n- **Process.** The repository follows Git Flow with branch protection and a Conventional Commits\n  history — see [`CONTRIBUTING.md`](CONTRIBUTING.md).\n- **License:** MIT — reuse freely.\n- **Provenance dates** throughout reflect when each pattern was last verified; run the freshness\n  audit to re-confirm against current docs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fesaldgut%2Fai-native-engineering-workspace","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fesaldgut%2Fai-native-engineering-workspace","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fesaldgut%2Fai-native-engineering-workspace/lists"}