{"id":50278744,"url":"https://github.com/joyperm/agentjojoy","last_synced_at":"2026-06-09T01:03:49.348Z","repository":{"id":360773738,"uuid":"1251606765","full_name":"Joyperm/AgentJoJoy","owner":"Joyperm","description":"Generic AI workspace template for Claude Code, Codex, Cursor, and Gemini — wraps any project with portable AI context, onboarding flows, and skill routines.","archived":false,"fork":false,"pushed_at":"2026-05-27T22:16:27.000Z","size":126,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-27T23:22:41.939Z","etag":null,"topics":["ai","antigravity","claude-code","codex","cursor","developer-tools","workspace-template"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","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/Joyperm.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":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-05-27T18:39:36.000Z","updated_at":"2026-05-27T22:16:26.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Joyperm/AgentJoJoy","commit_stats":null,"previous_names":["joyperm/agentjojoy"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/Joyperm/AgentJoJoy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Joyperm%2FAgentJoJoy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Joyperm%2FAgentJoJoy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Joyperm%2FAgentJoJoy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Joyperm%2FAgentJoJoy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Joyperm","download_url":"https://codeload.github.com/Joyperm/AgentJoJoy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Joyperm%2FAgentJoJoy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33834011,"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-02T02:00:07.132Z","response_time":109,"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":["ai","antigravity","claude-code","codex","cursor","developer-tools","workspace-template"],"created_at":"2026-05-27T23:00:32.115Z","updated_at":"2026-06-09T01:03:49.336Z","avatar_url":"https://github.com/Joyperm.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AgentJoJoy — Generic AI Workspace Template\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/agentjojoy-hero.svg\" alt=\"AgentJoJoy governance workspace\" width=\"100%\"\u003e\n\u003c/p\u003e\n\nA workspace template for working with AI coding assistants (Claude Code, Codex, Cursor, Gemini) across multiple projects — both brand-new projects and existing repositories. Designed to feel like working with a **senior dev mentor** who knows when to just execute and when to teach.\n\nAgentJoJoy is a **governance layer, not an agent runtime**.\n\nIt gives humans and AI agents a safe operating manual, memory, and handoff system for your local projects.\n\nUse it to:\n- Resume work without losing context.\n- Let Claude, Codex, Cursor, and Gemini share one workspace safely.\n- Upgrade AI operating rules without overwriting project memory.\n\n---\n\n## What AgentJoJoy Is\n\nAgentJoJoy is a governance layer, not an agent runtime.\n\nIt provides portable, human-readable contracts that help humans and AI agents\nwork safely across tools, providers, and projects: workflow rules and safety\ngates, onboarding/intake context, SmartWorkers, Hook Enforcement Contracts, and\noptional local/alternative-provider fields.\n\n## What AgentJoJoy Is Not\n\nAgentJoJoy does not run agents, install daemons, replace Claude Code / Codex /\nAntigravity, or force a multi-agent workflow. It stays vendor-neutral and\nteam-safe by design — every layer is opt-in and contract-first.\n\n---\n\n## Quick Start\n\n1. Click **Use this template** on GitHub to create your own AgentJoJoy workspace repository.\n2. Clone your new repository to your machine.\n3. Open Claude Code, Codex, Cursor, or Gemini at the workspace root.\n4. Ask the AI to read `CLAUDE.md` / `AGENTS.md` and start onboarding.\n5. Choose **New Project** or **Existing Project** when the AI asks.\n\nAlready have an AgentJoJoy workspace? Use the [Upgrading](#upgrading) flow instead of creating a fresh template copy, so your project notes, decisions, and custom skills are preserved.\n\n---\n\n## Features at a Glance\n\n- **Private-by-default workspace wrapper** — keeps assistant context beside your project instead of inside it, so personal AI notes stay out of project commits.\n- **Auto-loading agent rules** — `CLAUDE.md` and `AGENTS.md` give Claude Code, Codex, Cursor, and Gemini a shared starting point.\n- **Context-aware rule loading** — agents load the smallest matching context bundle for resume, debug, review, onboarding, git/worktree, and skill work instead of re-reading every rule file every turn.\n- **4 Pillars of Workspace Governance** — structures AI permissions, budgets, scope limits, and execution safety into a logical 4-pillar model.\n- **3 Onboarding Gateways** — channels the onboarding process into New Project, Existing Project, or Resume flows under strict security guardrails.\n- **Consolidated Workspace \u0026 Operations Model** — merges structural rules, Directory Junction rules, and local git-sync decisions into one cohesive guide.\n- **5-Step Skill Precedence Hierarchy \u0026 Sandboxing** — establishes strict sandboxing boundaries and priority guidelines to govern portable skills execution safely.\n- **Guided onboarding** — choose a new project or wrap an existing repo; the AI fills only the context you approve.\n- **Dual engagement modes** — switch between `execute` for terse delivery and `teach` for pair-programming explanations.\n- **Milestone teaching \u0026 opt-in auto-commit** — on complex work the AI breaks the task into verifiable milestones and (in `teach` mode; toggleable in `engagement-mode.md`) shows a short \"why it works / where it can break\" teaching box in chat at each one, and can optionally make clean *local* checkpoint commits (off by default; pushing always asks).\n- **Masked secret intake** — secrets are entered locally through a masked prompt and referenced by env-var name; the AI never asks for or prints a secret value in chat.\n- **Generic input handling** — for tools that process variable input, the AI handles the whole input *class* (encodings, formats, edge cases) by naming its dimensions of variation, instead of patching one failing case at a time.\n- **Wrapper isolation by default** — onboarding keeps your AI context out of the project repo (gitignores `AgentJoJoy/`), so personal notes never land in project history.\n- **Multi-agent coexistence** — coordinate Claude Code, Codex, Cursor, and Gemini without branch or attribution confusion.\n- **Cursor bridge fallback discipline** — Cursor wrapper walk-up is the default; repo-local bridge files are fallback-only after a real discovery failure and stay local-only in team repos unless explicitly approved.\n- **Technical Precedents Logging** — AI proactively logs resolved technical blockers and workarounds to a transparent markdown file.\n- **Read-only resume checks** — refreshes local branch/worktree state without fetch, pull, push, rebase, merge, or branch switching.\n- **Junction Link Model** — supports rigid runtime folders with Windows Directory Junctions while keeping AI system files isolated.\n- **Test-first discipline** — encourages the AI to write or stub the failing/reproducing test before implementation or debugging.\n- **AI-NO-OVERWRITE Protection** — protects custom configurations and codebase sections from being changed by the AI or lost during upgrades.\n- **Portable skills** — `SKILL.md` routines for debugging, review, root-cause analysis, stakeholder updates, and design interviews.\n- **SmartWorker framework** — when recurring work needs knowledge (not just a script), the single Main Agent dispatches a worker into a separate context and gets back a synthesized result, keeping its own context clean; a runtime-neutral spec maps to each agent's native subagent mechanism. Not multi-agent orchestration.\n- **Hook Enforcement Contracts** — optional docs/templates for owners who want to mechanize selected AgentJoJoy or project-specific gates in Claude Code, Codex, or Antigravity; no hook scripts/configs are active by default.\n\n---\n\n## Concept\n\nEach project gets its own **wrapper folder** containing:\n\n- The actual project content (a git repo, docs, anything)\n- A `AgentJoJoy/` sibling holding personal AI context\n- A central `CLAUDE.md` / `AGENTS.md` at the root that drives the AI\n\n### Context \u0026 Tool Mapping\n\n| Context | Tool | Entry Point | Onboarding Path |\n| :--- | :--- | :--- | :--- |\n| **Team repo (work)** | Claude Code + Cursor | `CLAUDE.md` + `AGENTS.md` | Path 2 + English default |\n| **Personal project** | Claude / Codex / Gemini | `CLAUDE.md` / `AGENTS.md` | Path 1 + preferred language |\n\n---\n\n## Workspace Lifecycle\n\nThe template automatically detects whether the workspace is new, partly configured, or ready to resume:\n\n```mermaid\ngraph TD\n    A[Start Session in Workspace] --\u003e B{Classify State}\n    B --\u003e|New workspace| D{Choose Onboarding Path}\n    B --\u003e|Partly configured| E[Resume Intake Flow]\n    B --\u003e|Ready to resume| F[Resume Check Protocol]\n\n    D --\u003e|Path 1: New Project| G[Scaffold \u0026 Auto-fill templates]\n    D --\u003e|Path 2: Existing Project| H[Read-only scan \u0026 Pre-fill templates]\n    D --\u003e|Skip| I[Bypass Onboarding for Session]\n\n    F --\u003e J[Check Git Status \u0026 agent-records/progress-tracker.md]\n    J --\u003e K[Ask to continue active task or start new task]\n```\n\n### Onboarding Paths (Intake Phase)\n\n- **Path 1 — New project**: AI asks minimal questions, proposes a folder structure, and scaffolds empty templates.\n- **Path 2 — Existing project**: AI scans the project read-only (README, manifests, git status), extracts context, fills metadata, and proposes a portable rules snippet for the target repo.\n\n### Daily Session (Resume Phase)\n\nWhen a session starts in a configured workspace, the AI reads `AgentJoJoy/agent-records/progress-tracker.md`, checks git status, reports active worktrees/branches, and asks whether to resume the current task or start a new one.\n\n### Context Loading\n\nAgentJoJoy routes each task to a small context bundle instead of asking the AI to re-read every rule file on every turn. Resume, debug, review, onboarding, git/worktree, and skill tasks each have a focused reading path; mutable state such as git status, the active tracker, and current diffs is refreshed only when relevant.\n\n### After Onboarding\n\nThe workspace-root `README.md` is bootstrap scaffolding. Once onboarding\nfinishes, the project README should live inside the real project folder:\n\n```text\n\u003cworkspace-root\u003e/\n├─ AgentJoJoy/\n├─ CLAUDE.md\n├─ AGENTS.md\n└─ \u003cproject-folder\u003e/\n   └─ README.md\n```\n\nFor existing projects, keep the project's own README if it already exists. If\nit does not, create `\u003cproject-folder\u003e/README.md` from project facts instead of\nmoving AgentJoJoy product text into it. After that, remove or explicitly defer\ncleanup of the root bootstrap README.\n\nThis keeps daily git work focused on the real project folder. Existing\nprojects usually already have their own remote and README; AgentJoJoy remains a\nlocal operating layer beside that project instead of competing with the\nproject's public documentation.\n\n---\n\n## Privacy \u0026 Local-First Guarantees\n\nAgentJoJoy is designed so that **everything stays on your machine** unless you choose to share it. We aim for **transparency over implicit behavior** — the AI should never quietly collect, transmit, or do anything to your data that you didn't explicitly agree to.\n\n### What the AI may write to your workspace\n\n- **Project templates** (`AgentJoJoy/agent-context/*.md`) — filled during intake from your answers and any read-only repo scans. You see and approve every fill.\n- **`AgentJoJoy/agent-records/progress-tracker.md`** — daily work tracker. The AI updates it after meaningful work actions.\n\n### Technical Precedents\n \nThe Technical Precedents file (`AgentJoJoy/agent-context/technical-precedents.md`) is a flat markdown file under `agent-context/` that serves as the workspace's memory of validated technical solutions and workarounds.\n- The AI will proactively log issues and solutions here whenever it resolves a technical blocker or debugs an environment-specific workaround.\n- Future AI sessions read this file when debugging, troubleshooting tooling, or following a tracker link to a relevant precedent, preventing the AI from repeating past technical mistakes or re-asking solved questions.\n- It is fully transparent, editable, and local to your workspace wrapper.\n\n### What the template **never** does\n\n- ❌ No telemetry, no analytics, no usage tracking sent off-machine.\n- ❌ No automatic uploads, fetches, or remote calls from any helper script.\n- ❌ No background daemons or scheduled tasks installed.\n- ❌ No writes to your project repo's git history (precedents live outside the wrapped repo).\n- ❌ No remote uploads or sync — precedents remain local to the workspace.\n\n---\n\n## Git Sync Strategies\n\nWhen the upstream base branch (`main`) moves while you have work in progress, AgentJoJoy helps you choose the best sync strategy:\n\n- **Merge** — preserves history. Recommended when task commits are already pushed or under PR review.\n- **Rebase** — replays commits onto the latest `main`. Recommended when task commits are local-only and clean.\n- **Squash \u0026 Rebase** — collapses noisy WIP commits into one before replaying. Recommended for messy/WIP local work.\n\nSee [`AgentJoJoy/agent-rules/workspace-model.md`](AgentJoJoy/agent-rules/workspace-model.md) for the full decision guide.\n\n---\n\n## Folder Structure\n\n### Records\n- [`AgentJoJoy/agent-records/progress-tracker.md`](AgentJoJoy/agent-records/progress-tracker.md) — hot index of active branches, worktrees, tasks in progress, and next steps. Read first by the AI.\n- [`AgentJoJoy/agent-records/setup-tracker.md`](AgentJoJoy/agent-records/setup-tracker.md) — temporary hot setup/onboarding tracker.\n- [`AgentJoJoy/agent-records/setup-history/`](AgentJoJoy/agent-records/setup-history/) — cold archive for completed setup/onboarding history.\n- [`AgentJoJoy/agent-records/decisions/`](AgentJoJoy/agent-records/decisions/) — key decisions log for the wrapped workspace.\n- [`AgentJoJoy/agent-records/work/`](AgentJoJoy/agent-records/work/) — optional archive records for selected completed or paused work, loaded on demand.\n\n### Project Metadata (AI-fillable)\n- [`AgentJoJoy/agent-context/project-overview.md`](AgentJoJoy/agent-context/project-overview.md) — project identity, type, stack, work areas.\n- [`AgentJoJoy/agent-context/architecture.md`](AgentJoJoy/agent-context/architecture.md) — codebase architecture, invariants, boundaries (optional).\n- [`AgentJoJoy/agent-context/standards.md`](AgentJoJoy/agent-context/standards.md) — code style and testing guidelines.\n- [`AgentJoJoy/agent-context/ui-context.md`](AgentJoJoy/agent-context/ui-context.md) — UI framework context (optional).\n- [`AgentJoJoy/agent-context/domain-language.md`](AgentJoJoy/agent-context/domain-language.md) — project-specific glossary (optional).\n- [`AgentJoJoy/agent-context/technical-precedents.md`](AgentJoJoy/agent-context/technical-precedents.md) — triggered technical memory for debug, tooling, environment, and known-workaround tasks.\n\n### Workflow \u0026 AI Rules\n- [`CLAUDE.md`](CLAUDE.md) / [`AGENTS.md`](AGENTS.md) — entry points that load automatically and define session start protocols.\n- [`AgentJoJoy/agent-rules/workflow-spec.md`](AgentJoJoy/agent-rules/workflow-spec.md) — canonical SPEC-1 to SPEC-9 rules (Strategic choices, approvals).\n- [`AgentJoJoy/agent-rules/ai-workflow-rules.md`](AgentJoJoy/agent-rules/ai-workflow-rules.md) — AI permission boundaries structured as **4 Pillars of Workspace Governance** (safety gates, command/git execution boundaries).\n- [`AgentJoJoy/agent-rules/intake-flow.md`](AgentJoJoy/agent-rules/intake-flow.md) — onboarding framework organized into **3 Onboarding Gateways** (Path 1, Path 2, and T2 Resume) with strict \"Security-First Guardrails Always\".\n- [`AgentJoJoy/agent-rules/workspace-model.md`](AgentJoJoy/agent-rules/workspace-model.md) — **Consolidated Workspace \u0026 Operations Model** merging layout specifications, operating commands, and git-sync policies (Merge, Rebase, Squash \u0026 Rebase) into a single unified reference.\n- [`AgentJoJoy/workflow-guide.md`](AgentJoJoy/workflow-guide.md) — English onboarding manual.\n- [`AgentJoJoy/workflow-guide-th.md`](AgentJoJoy/workflow-guide-th.md) — Thai onboarding manual.\n- [`AgentJoJoy/agent-smartworkers/`](AgentJoJoy/agent-smartworkers/) — SmartWorker framework: runtime-neutral spec + template for Main-dispatched knowledge workers (not multi-agent orchestration).\n- [`AgentJoJoy/agent-hooks/`](AgentJoJoy/agent-hooks/) — optional Hook Enforcement Contracts: docs/templates only; owners choose whether, where, and how to implement any hook.\n- [`AgentJoJoy/agent-templates/`](AgentJoJoy/agent-templates/) — optional snippet library and portable inserts, loaded only when needed.\n- [`AgentJoJoy/agent-records/decisions/`](AgentJoJoy/agent-records/decisions/) — key decisions log.\n\n### Portable Skills (SKILL.md)\n- [`AgentJoJoy/skills/README.md`](AgentJoJoy/skills/README.md) — portable skill layers configuration with a 5-step **Priority of Precedence** safety matrix, strict sandboxing boundaries, and active/passive skill discovery heuristics.\n- [`AgentJoJoy/skills/agentjojoy-core-practices/SKILL.md`](AgentJoJoy/skills/agentjojoy-core-practices/SKILL.md) — portable routines for Debugging, Code Review, Root Cause Analysis, and Management-Talk rewriting.\n- [`AgentJoJoy/skills/grill-me/SKILL.md`](AgentJoJoy/skills/grill-me/SKILL.md) — structured design interview for vague plans.\n\n\u003e **Note:** AgentJoJoy skills don't appear in the `/` command palette. They're discovered by the AI reading the workspace and matching the skill description against your request — just describe what you want and the AI will pick the right skill from `AgentJoJoy/skills/`. **Adding a skill is drag-and-drop**: place a folder containing a `SKILL.md` into `AgentJoJoy/skills/` and the AI sees it via `git status` on the next interaction — no install or restart needed.\n\n---\n\n## How to Use\n\n### Option A — Use This Template (Recommended)\n\nFor a new workspace, use GitHub's template flow:\n\n1. Click **Use this template** on the GitHub repository page.\n2. Create a new repository under your account or organization.\n3. Clone that new repository to your machine.\n4. Open your AI assistant at the cloned workspace root.\n5. Paste:\n\n```text\nPlease read CLAUDE.md / AGENTS.md and start the AgentJoJoy onboarding intake flow.\n```\n\nThe AI will load the workspace rules and ask whether this is a new project, an existing project, or something to skip for now.\n\n### Option B — Existing Project Wrapper\n\nIf you already have a project repo or document folder, create an AgentJoJoy workspace first, then choose **Existing Project** during onboarding. The AI will scan the existing project read-only, explain where personal AI files live, and ask before moving, cloning, linking, or writing anything.\n\n### Option C — Local Copy Fallback\n\nIf GitHub's template button is unavailable, clone or download this repository, copy the wrapper folder to your workspace, and remove the copied `.git` directory before onboarding. Prefer **Use this template** when available; it avoids the manual copy-and-cleanup step.\n\n\u003e [!NOTE]\n\u003e **Cross-platform note:** The AgentJoJoy workflow and documents can be used on Windows, macOS, or Linux. AgentJoJoy does not ship active helper scripts by default; ask your AI assistant to adapt any one-off commands to the local shell, and approve any state-changing command first.\n\n### Unwrapping AgentJoJoy\n\nTo return a workspace to its normal, unwrapped state (for example before sharing it or removing the personal AI operating layer), ask the current Main Agent to unwrap AgentJoJoy instead of running a bundled delete script.\n\n```text\nPlease help me unwrap AgentJoJoy from this workspace. First inventory the\nAgentJoJoy files and records, ask what I want to preserve, show a dry-run\ncleanup plan, and wait for my explicit approval before deleting anything.\n```\n\n\u003e [!NOTE]\n\u003e **Preserve-first cleanup:** The Main Agent should identify `AgentJoJoy/agent-records/`, decisions, work records, technical precedents, custom skills, and editor settings before proposing deletion of `AgentJoJoy/`, `CLAUDE.md`, `AGENTS.md`, `VERSION`, or legacy root tracker files. Any destructive filesystem command still requires explicit owner approval.\n\n---\n\n## Upgrading\n\nThe **Use this template** button is only for creating a new workspace. To update an existing AgentJoJoy workspace, use the upgrade prompt below. The AI compares your workspace with a specific release tag, preserves your project-owned files, and asks before applying template changes.\n\nAgentJoJoy is **AI-driven**, so upgrades are too. There is no install script to maintain and no package manager. Instead, you paste a canonical upgrade prompt into your AI assistant (Claude Code, Cursor, Codex, Gemini), and the AI handles the work using the project's own file-ownership rules.\n\n\u003e [!WARNING]\n\u003e **Upgrading Pre-v1.2.4 Workspaces with Custom Skills**: In template versions prior to `v1.2.4`, the file ownership rules (`AgentJoJoy/agent-rules/file-ownership.md`) classified the entire `AgentJoJoy/skills/` directory as template-owned. If your workspace contains custom project-specific skills (i.e. folders in `AgentJoJoy/skills/` other than `agentjojoy-core-practices` or `grill-me`), the upgrade agent may attempt to delete them. Before running the upgrade prompt, either manually edit your local `file-ownership.md` to classify your custom skills as user-owned, or explicitly instruct the agent: *\"Preserve my custom skills in AgentJoJoy/skills/ (do not delete or overwrite them)\"*.\n\n\u003e [!TIP]\n\u003e **Protecting Custom Content with AI-NO-OVERWRITE**: You can protect any custom settings, code, or notes in any file (even inside template-owned files) by wrapping them in HTML comment tags: `\u003c!-- AGENTJOJOY:AI-NO-OVERWRITE BEGIN --\u003e` and `\u003c!-- AGENTJOJOY:AI-NO-OVERWRITE END --\u003e`. The AI is strictly forbidden from altering or deleting anything inside these tags, and template upgrades will bypass them entirely.\n\n### Check your current version\n\n```powershell\ntype VERSION\n```\n\n(The `VERSION` file lives at your workspace root and was stamped when you installed the template. If it's missing, your workspace pre-dates v1.2.0 — the upgrade prompt below handles that case.)\n\n### Check what's new\n\nSee [CHANGELOG.md](CHANGELOG.md) in this repository — and the [Releases page](https://github.com/Joyperm/AgentJoJoy/releases) for human-readable highlights per version.\n\n### Canonical Upgrade Prompt\n\nOpen your AI assistant in the workspace root and paste:\n\n```text\nPlease upgrade this AgentJoJoy workspace to the latest published template version.\n\nProcedure:\n1. Read the VERSION file at the workspace root. If it does not exist, treat the current version as \"pre-v1.2.0\" and proceed.\n2. Identify the target version and fetch the latest source content. Try these in order:\n   a. Check the latest release tag from https://github.com/Joyperm/AgentJoJoy/releases and the public CHANGELOG.md.\n   b. Clone the target tag locally to a temporary folder using a shallow clone:\n      `git clone --depth 1 --branch \u003ctag\u003e https://github.com/Joyperm/AgentJoJoy.git temp-agentjojoy-upgrade`\n      (Use this clone as the source of truth for the upgrade.)\n   c. If fetching or cloning is unavailable (no network, blocked runtime, offline session), ask me for the target version and a local path to a pre-existing clone of that tag.\n   d. If neither is possible, stop and report what's missing — do not guess content.\n3. If the local version equals the target version, stop and report \"already at latest\".\n4. Otherwise, read AgentJoJoy/agent-rules/file-ownership.md to know which files are template-owned, user-owned, or mixed.\n5. Walk the changes file by file (comparing the workspace files to the target clone source):\n   - For template-owned files: propose the new content; apply only after my approval.\n   - For mixed files: show a diff focused on structural/prose changes, preserve my filled values, apply after my approval.\n   - For user-owned files: do not modify. If a structural migration is required, propose a manual edit plan with per-section approval.\n6. When done, update the VERSION file to the latest tag and log the upgrade in AgentJoJoy/agent-records/progress-tracker.md under Recent Actions with the date and version transition (e.g. \"Upgraded AgentJoJoy template v1.1.0 -\u003e v1.2.0\").\n7. Clean up by deleting the temporary upgrade directory (e.g. `temp-agentjojoy-upgrade`) using a safe OS command (e.g. `rmdir /s /q` or `Remove-Item`).\n\nConstraints:\n- Never run git push, pull, commit, merge, or branch switch without explicit approval.\n- Check if a remote origin is configured for the workspace root repository before attempting any Git push operations. If no remote is configured, do not attempt to push and stop after committing locally.\n- Preserve all content in agent-context/ and agent-records/.\n- If unsure about a file's ownership, ask before changing it.\n```\n\nThe AI will read [`AgentJoJoy/agent-rules/file-ownership.md`](AgentJoJoy/agent-rules/file-ownership.md), follow per-file approval gates, and never touch your project content. You can stop the upgrade at any point.\n\n### Manual upgrade (alternative)\n\nIf you prefer a fully manual approach, the same file-ownership table in [`AgentJoJoy/agent-rules/file-ownership.md`](AgentJoJoy/agent-rules/file-ownership.md) tells you which files are safe to overwrite from a freshly cloned latest version, which to leave alone, and which to merge by hand.\n\n## License\n\n[MIT License](LICENSE) © 2026 Joyperm\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoyperm%2Fagentjojoy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoyperm%2Fagentjojoy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoyperm%2Fagentjojoy/lists"}