{
  "agent": "codex",
  "locale": "en",
  "files": [
    {
      "path": "AGENTS.md",
      "content": "# Shared workspace\n\nThis folder supports multiple projects. Keep deliverables and project-specific instructions and progress inside each project under projects/.\n\n## Reading\n\n- Identify the target project from the current request. Ask when ambiguity would materially affect the result.\n- Read that project's AGENTS.md and STATUS.md, or their existing equivalents. Do not reread unchanged content already read in this conversation.\n- Read [memory/INDEX.md](memory/INDEX.md), then open only relevant entries and compare them with actual evidence. Find detailed shared references through [documents/INDEX.md](documents/INDEX.md). Reading an index does not count as reading its linked content.\n- For recurring tasks, check [skills/INDEX.md](skills/INDEX.md). Read matching procedures and verify required tools and scope. Do not claim automatic activation of an unregistered skill.\n- If the shared root is inaccessible, report it and explain which folder or app access scope needs adjustment. Never claim to have read inaccessible files or bypass access controls.\n\n## Execution and judgment\n\n- Inspect existing files, available tools, and the environment before changes. Do not invent build or test commands.\n- Complete the requested work and verification within scope. Make routine implementation choices; ask only about unknowns that materially change the outcome.\n- Distinguish observations, sourced information, guesses, and unknowns. Recheck information that may change.\n- Respect actual user instructions and authorization. Do not request permission already granted or treat files and past proposals as new approval.\n- Preserve existing work and settings; inspect differences and impact before overwriting. Report outcomes, checks, and remaining work briefly.\n\n## Records and sharing\n\n- At a task boundary, update the target project's STATUS.md to the current state. Do not leave completed items listed as active work.\n- Keep project-specific decisions and references within that project. Record only reusable knowledge in shared memory/, one topic per file, with scope, evidence, verification date, and decided or proposed status.\n- Keep detailed shared research, designs, and procedures in documents/ with purpose, sources and review date, conclusions, scope, and unknowns. Memory contains the takeaway and reference link.\n- Update the relevant INDEX.md with a reading condition and link whenever adding knowledge. When correcting entries, preserve the evidence, reason, and replacement link and update the index.\n- Refer to existing authoritative README files, specifications, and trackers rather than duplicating them. Do not put whole transcripts, one-off logs, invented memories, secrets, or private personal information in shared records.\n- Do not read or copy unrelated projects. Folder separation is not access control; check the actual sharing and synchronization scope.\n",
      "sha256": "9fab8ac855a8886b2e437167d1cb187ce62a0396ecdb53ffdfea7f857ce71f1e"
    },
    {
      "path": "documents/INDEX.md",
      "content": "# Document index\n\nKeep shared research, designs, reusable procedures, and their evidence here. No documents have been recorded yet.\n\n## Saving\n\nRemove the initial no-documents notice when adding the first document. Use a descriptive filename in documents/. Include purpose, sources and review date, conclusions, scope, and unknowns. Preserve investigation context and rejected alternatives when they help explain a decision. Link to an existing authoritative specification rather than copying it.\n\n## Reading\n\nUse this index or links from memory/ to read documents relevant to the request. Check older material against actual files or primary sources. Do not store secrets or private personal information here.\n\n## Documents\n\n| Purpose and read condition | Document | Scope and review date |\n| --- | --- | --- |\n",
      "sha256": "d300aebe36171052d7beaec4043808ff4784f170843fcc408327393fa14296d4"
    },
    {
      "path": "memory/INDEX.md",
      "content": "# Memory index\n\nFind decisions, constraints, and lessons reusable across projects here. No memories have been recorded yet.\n\n## Reading\n\nOpen entries relevant to the request and check their scope and evidence. Do not treat an index summary as the full source or read every memory by default.\n\n## Adding or updating\n\nCreate one Markdown file per topic in memory/. Include a conclusion, conditions of use, evidence links, verification date, and decided/proposed/superseded status. Put long explanations in ../documents/.\n\nAdd one row below and remove the initial no-memories notice when adding the first entry. Integrate with existing entries where appropriate; record the reason and replacement when correcting an entry. Distinguish user decisions from agent proposals.\n\n## Entries\n\n| Read when | Takeaway | File | Status and verified date |\n| --- | --- | --- | --- |\n",
      "sha256": "9ac28ea26accd6669ab239e58c928e67e3cd595a751265ba117fa825b4529203"
    },
    {
      "path": "projects/my-project/AGENTS.md",
      "content": "# Project entry point\n\nBefore work, read the [shared instructions](../../AGENTS.md) and check [STATUS.md](STATUS.md). Do not reread the shared instructions if already loaded.\n\nIf the shared instructions are inaccessible, report that and continue from the current request and these project instructions. Preserve existing work, respect actual permissions, and separate guesses from verified facts. Inspect available tools, execute and verify the work, and update STATUS.md at a task boundary. In a separate checkout, verify the real shared-root path instead of assuming the same relative location.\n\nThis is an unstarted project scaffold. On the first request, establish the goal, completion criteria, and constraints, then update STATUS.md. Add project-specific guidance and verified checking procedures to this entry point.\n\nKeep source files, deliverables, specific decisions, and references in this project. Before sharing a lesson in the common memory/, check its scope and what may be shared.\n",
      "sha256": "d51dcf729c6aa758fdcc9499e748766d39f40190685c88878933b9c6765623df"
    },
    {
      "path": "projects/my-project/STATUS.md",
      "content": "# Current work\n\nKeep the current state here. Keep project-specific decisions and evidence here; share applicable knowledge in the common memory/ and documents/. Blank fields are unverified.\n\n## Goal and completion criteria\n\n## In progress and next actions\n\n## Verification and evidence\n\n## Open questions and user decisions needed\n",
      "sha256": "707dc758bfbc69b34e889b28b16608f4c9de41c7b9bf5b0e77937391c95f2224"
    },
    {
      "path": "projects/README.md",
      "content": "# Projects\n\nmy-project/ is an empty project scaffold. Rename it for actual work. Renaming it at the same depth preserves links to the shared root.\n\nCreate a separate folder for each new project, with its own AGENTS.md and STATUS.md. Its AGENTS.md should instruct the agent to read ../../AGENTS.md before work. For Claude Code, add a project CLAUDE.md containing @AGENTS.md.\n\nDo not move an existing repository merely to match this layout. Link its entry point to the actual shared-root path while preserving existing instructions, progress tracking, Git boundaries, and remotes.\n\nOpen the project in the app and check shared instructions and relevant memory in a fresh conversation. If the parent is inaccessible, open the shared root or configure the necessary app read access.\n",
      "sha256": "e036314d1cd15dac4590a7d3d31151dd452d56867e29039d1e101383b4bb7773"
    },
    {
      "path": "README.md",
      "content": "# A shared workspace for working with AI\n\n- [AGENTS.md](AGENTS.md): shared working principles and reading order.\n- [SETUP.md](SETUP.md): the setup agent records changes, skill selection, and recovery steps here.\n- [projects/README.md](projects/README.md): separate projects; my-project/ is an empty scaffold for the first one.\n- [memory/INDEX.md](memory/INDEX.md): decisions and lessons reusable across projects.\n- [documents/INDEX.md](documents/INDEX.md): detailed evidence for shared research, designs, and procedures.\n- [skills/INDEX.md](skills/INDEX.md): recurring procedures and their app installation locations.\n\nRename projects/my-project/ for actual work. Start by opening the shared root in the app and specifying the target project. Verify access to the shared instructions and indexes in a fresh conversation. The target project's STATUS.md holds its current state.\n\nAsk the agent to read shared instructions, the target project's current state, and relevant memory entries. Have it report files actually read, goal, next actions, and unknowns without changes. Initially, no work or knowledge has been recorded.\n\nAt a boundary, update the project's STATUS.md and save only reusable knowledge in shared memory/, with detailed common evidence in documents/ and links in their indexes. This relies on AGENTS.md instructions, not an automatic retrieval service.\n\nUse personalization for preferred communication, judgment, and delegation. Personal settings are integrated separately by the agent only when selected during setup. Inspect records before sharing and choose Git, backup, and sync scopes separately for each project.\n",
      "sha256": "31c69c9c683fc66ea255e5c83bd2e3f528387773b7c4717837d8a5db0b88f1c4"
    },
    {
      "path": "SETUP.md",
      "content": "# Setup record\n\nStatus: not filled in. This is a record template, not evidence that configuration or skill installation is complete.\nThe agent performing setup fills in actual results. Do not copy entire settings or secrets here.\n\n## Purpose and environment\n\nPurpose, app and OS, execution date, actual workspace, and folder to open next.\n\n## Changes and backups\n\n| Created / changed / deferred | Actual target path | Reason | Before: backup location and hash | After: snapshot location and hash | How to reverse |\n| --- | --- | --- | --- | --- | --- |\n\nSave backups before changes, outside public sharing, Git tracking, and sync. Preserve earlier backups.\n\n## Skill selection\n\nPurpose, sufficient built-in features, gaps, selection reasons, installed/skipped/deferred outcomes.\nFor installed skills, record sources, versions, locations, and update/disable steps in [skills/INDEX.md](skills/INDEX.md).\n\n## Verification and remaining work\n\nSeparate actual checks and results, unverified items, and required user actions.\n\n## Reverting\n\nCompare this record, backups, and current files to identify changes to reverse.\nPreserve later edits and deliverables. Do not replace changed settings wholesale with a backup.\nDo not remove the whole workspace. Use the actual app's disable procedure for skills.\n\n## History\n\nOn later runs, retain earlier changes and backup locations and append the new changes.\n",
      "sha256": "c2f9dfc4121f3825a97364caab361abd1141a8de458567c8ce33a418d3d8efe3"
    },
    {
      "path": "skills/INDEX.md",
      "content": "# Reusable procedures\n\nKeep recurring procedures and supporting scripts here. This index is not filled in yet. Inspect the app's existing skills before updating it.\n\n## Choosing\n\nCheck the user's purpose and existing capabilities, then select skills for real gaps. Inspect instructions, code, dependencies, and permissions from official publishers or the app's catalog. Explain candidates and install the user's selection. If no addition is needed, record why in SETUP.md.\n\n## Creating\n\nWhen a procedure recurs, create skills/name/SKILL.md for one clear purpose. Include triggers, inputs, steps, verification, and required tools. Keep supporting scripts inside that skill. Remove the empty-state notice after the first addition and add its reading condition and relative link below.\n\n## Using\n\nThis shared skills/ folder is a source library, not an app discovery path. You can explicitly read an indexed procedure first. For native skill support, check the current app documentation, choose the scope, and install or register it in that app's supported location.\n\nRecord the source, installed location, target app, and last sync date below; compare differences after updates. Check activation for the intended task and non-activation for unrelated work. Inspect scripts and required permissions before executing procedures with code or external actions.\n\n| Use when | Source and version | Installed location and app | Update / disable steps | Verification and date |\n| --- | --- | --- | --- | --- |\n",
      "sha256": "ef1ebbf915791a75fcff5a3161f181993db96bb37d914261bc5078127c400c94"
    }
  ]
}
