Skip to content

Commit b12cda0

Browse files
v0.1.4
1 parent 6273efd commit b12cda0

File tree

8 files changed

+495
-2
lines changed

8 files changed

+495
-2
lines changed

README.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ It combines:
1111
- a predictable folder layout for mixed stacks
1212
- shared caches and helper tooling
1313
- lightweight workspace metadata
14+
- a filesystem-first context model for docs, manifests, and agent guidance
1415
- a vendored [Workspace Hub](repos/workspace-hub/README.md) app for discovery, runtime control, and previews
1516

1617
## Why It Exists
@@ -23,6 +24,28 @@ This repo exists to keep local development practical when your machine contains
2324
- WordPress, Vite, static, PHP, and utility repos can coexist cleanly
2425
- ServBay remains optional rather than becoming a hard dependency
2526

27+
## Challenges
28+
29+
Mixed local workspaces tend to accumulate useful context in too many places at once:
30+
31+
- repo docs and READMEs
32+
- runtime manifests and config files
33+
- screenshots and previews
34+
- local notes and operator overrides
35+
- repo-specific skills and machine-specific agent setup
36+
37+
When that context is fragmented, tools and agents either miss important signals or pull in too much noise too early.
38+
39+
## Our Approach
40+
41+
Codex Workspace addresses that with a practical filesystem-first model:
42+
43+
- keep repo facts in normal tracked files
44+
- keep generated summaries in `cache/`
45+
- keep reusable skills portable across agents
46+
- keep machine-specific memory and secrets local
47+
- keep retrieval and repo classification explainable
48+
2649
## Core Principles
2750

2851
- Do not merge unrelated repos into one dependency structure.
@@ -32,6 +55,24 @@ This repo exists to keep local development practical when your machine contains
3255
- Keep WordPress handling pragmatic.
3356
- Use lightweight manifests where explicit runtime behaviour helps.
3457

58+
## Core Concepts
59+
60+
### Filesystem-shaped context
61+
62+
Repo context should live in normal files and folders that are easy to inspect, not in hidden tool state.
63+
64+
### Layered context loading
65+
66+
Use short summaries first, then read deeper repo details only when needed.
67+
68+
### Observable retrieval
69+
70+
Repo classification and generated summaries should be explainable from the files that informed them.
71+
72+
### Cautious memory
73+
74+
Keep durable repo knowledge tracked. Keep operator memory, secrets, and machine-specific notes local until they prove broadly useful.
75+
3576
## Workspace Layout
3677

3778
```text
@@ -76,6 +117,7 @@ Start here:
76117
- [docs/04-build-order-and-dod.md](docs/04-build-order-and-dod.md)
77118
- [docs/05-examples-and-templates.md](docs/05-examples-and-templates.md)
78119
- [docs/06-cross-agent-skills-and-mcp.md](docs/06-cross-agent-skills-and-mcp.md)
120+
- [docs/07-context-cache-and-retrieval.md](docs/07-context-cache-and-retrieval.md)
79121

80122
Supporting references:
81123
- [docs/HANDOVER.md](docs/HANDOVER.md)
@@ -92,6 +134,25 @@ See:
92134
- [repos/workspace-hub/docs/manifest.md](repos/workspace-hub/docs/manifest.md)
93135
- [repos/workspace-hub/docs/runtime-troubleshooting.md](repos/workspace-hub/docs/runtime-troubleshooting.md)
94136

137+
## Context For Agents
138+
139+
Codex Workspace treats agent-facing context as normal workspace content rather than a hidden prompt blob.
140+
141+
The practical model is:
142+
143+
- tracked resources such as repo docs, READMEs, and manifests
144+
- portable skills stored in workspace-wide or repo-local folders
145+
- generated context summaries under `cache/context/`
146+
- local-only memory and MCP config kept separate from tracked repo content
147+
148+
This keeps context easier to inspect, reason about, and adapt across tools while keeping each repo independently runnable.
149+
150+
Tracked repo knowledge belongs in public docs, manifests, and portable skills. Local operator memory belongs in ignored local files until it becomes stable enough to promote into tracked project guidance.
151+
152+
See:
153+
- [docs/06-cross-agent-skills-and-mcp.md](docs/06-cross-agent-skills-and-mcp.md)
154+
- [docs/07-context-cache-and-retrieval.md](docs/07-context-cache-and-retrieval.md)
155+
95156
## Community
96157

97158
- [LICENSE](LICENSE)

cover.png

-57.8 KB
Loading

docs/00-overview.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,40 @@ The goal is to create a central workspace on the Mac desktop that:
1616

1717
This pack is intentionally split into separate files so Codex can reason about architecture and runtime concerns clearly.
1818

19+
## Context model
20+
21+
The workspace also aims to keep agent-facing context explicit and inspectable.
22+
23+
That means:
24+
25+
- repo docs and manifests remain the primary source of truth
26+
- portable skills live in normal workspace folders
27+
- generated summaries belong under `cache/`
28+
- local-only memory and secrets stay local
29+
30+
The intended result is a filesystem-first context model that is easier to inspect and less opaque than ad hoc prompt assembly.
31+
32+
## Challenges
33+
34+
Mixed-repo workspaces tend to fragment context across docs, manifests, runtime config, local notes, and tool-specific setup.
35+
36+
That creates a few predictable problems:
37+
38+
- useful repo knowledge becomes harder to find
39+
- too much detail gets loaded before relevance is established
40+
- local operator knowledge leaks into tracked docs
41+
- tool decisions become harder to explain
42+
43+
## Approach
44+
45+
Codex Workspace addresses that with a practical local-first model:
46+
47+
- keep repo facts in tracked files
48+
- keep generated summaries in `cache/`
49+
- keep skills portable rather than vendor-locked
50+
- keep local operator memory separate from tracked project knowledge
51+
- keep classification and retrieval observable
52+
1953
## Files in this pack
2054

2155
### `01-codex-workspace-handover.md`
@@ -46,6 +80,11 @@ Each repository remains independently runnable in the way that best suits it:
4680
- Vite / Three.js / WebGL projects via their dev server
4781
- other stacks according to their own tooling
4882

83+
The context model follows the same principle:
84+
- tracked repo resources are the canonical source of truth
85+
- generated summaries are helper layers
86+
- local memory is private until promoted intentionally
87+
4988
## Important architectural rule
5089

5190
**Every repository must remain runnable without ServBay.**
@@ -86,10 +125,12 @@ This setup should optimise for:
86125
- clarity
87126
- speed
88127
- low duplication
128+
- observable context
89129
- predictable repo handling
90130
- compatibility with Codex
91131
- compatibility with mixed repo types
92132
- clean future expansion
133+
- debuggable agent and tooling behaviour
93134

94135
## Non-goals
95136

docs/03-workspace-hub-build-spec.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,18 @@ Workspace Hub is:
5353
- a local orchestration layer
5454
- a visibility and convenience tool
5555

56+
## Challenges
57+
58+
In a mixed local workspace, the Hub needs to solve more than simple repo listing.
59+
60+
It also needs to make sense of:
61+
62+
- fragmented repo metadata
63+
- conservative type detection
64+
- multiple runtime models
65+
- generated summaries versus source-of-truth files
66+
- local-only operator knowledge that should not be mistaken for shared repo fact
67+
5668
## Recommended stack
5769

5870
### Current v1 stack
@@ -80,6 +92,7 @@ The Hub must be able to:
8092
- read key files from each repo
8193
- detect repo type
8294
- read optional repo manifest files
95+
- read cached repo context summaries when present
8396
- launch local commands
8497
- track running process state
8598
- stop launched processes
@@ -151,6 +164,7 @@ Each repo card or row should show:
151164
When a repo is selected, show:
152165
- summary metadata
153166
- detected files
167+
- context sources where available
154168
- commands
155169
- notes
156170
- current branch
@@ -189,6 +203,8 @@ Suggested detection signals:
189203
- lockfiles
190204
- known dependencies such as Three.js
191205

206+
The Hub should retain enough evidence to explain its classification to the user.
207+
192208
### Repo manifest reading
193209
If `.workspace/project.json` exists in a repo, it should override or guide detected behaviour.
194210

@@ -227,6 +243,33 @@ These are valuable and should be included if they do not slow down the first bui
227243
- lockfile/package manager detection
228244
- dependency missing warning
229245
- quick copy URL action
246+
- context cache freshness and provenance view
247+
248+
## Context model
249+
250+
Workspace Hub should treat repo context as a visible filesystem concern rather than an opaque internal prompt.
251+
252+
In practice that means:
253+
254+
- tracked docs and manifests are the source of truth
255+
- generated `L0` and `L1` summaries may live under `cache/context/`
256+
- raw repo files remain the `L2` detail layer
257+
- the Hub should be able to show which files informed a summary when that metadata exists
258+
259+
This keeps classification and summary behaviour explainable and easier to debug.
260+
261+
## Retrieval observability
262+
263+
Workspace Hub should make retrieval and detection decisions visible where practical.
264+
265+
Useful examples:
266+
267+
- show which files drove repo classification
268+
- show which files were used to generate the current summary
269+
- show whether a summary is fresh or stale relative to its inputs
270+
- distinguish between tracked repo context and local-only operator overrides
271+
272+
If the Hub says a repo is `vite`, the user should be able to see why.
230273

231274
## Data and persistence
232275

@@ -248,6 +291,8 @@ Persist:
248291

249292
Do not persist sensitive secrets in custom metadata files.
250293

294+
Local-only operator notes may be persisted, but they should stay clearly separate from tracked repo metadata and should never silently overwrite published repo facts.
295+
251296
## Repo manifest schema
252297

253298
Preferred path in each repo:

docs/06-cross-agent-skills-and-mcp.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,40 @@ Good contents:
110110

111111
Do not store real secrets or machine-specific absolute paths here.
112112

113+
## Tracked knowledge vs local memory
114+
115+
Separate durable repo knowledge from operator memory.
116+
117+
Tracked repo knowledge includes things such as:
118+
119+
- repo runtime rules
120+
- stable troubleshooting notes
121+
- reusable workflow guidance
122+
- durable task instructions that other contributors should also see
123+
124+
That knowledge should live in tracked files such as:
125+
126+
- `README.md`
127+
- `docs/`
128+
- `.workspace/project.json`
129+
- `.workspace/skills/`
130+
131+
Local operator memory includes things such as:
132+
133+
- machine-specific paths
134+
- private MCP endpoints
135+
- temporary workarounds
136+
- personal notes and reminders
137+
- secrets or environment-specific preferences
138+
139+
That material should stay in ignored local files by default.
140+
141+
## Promotion rule
142+
143+
If a local note proves stable, broadly useful, and safe to publish, promote it into tracked docs, manifests, or portable skills.
144+
145+
Do not rely on private local memory as the long-term home of canonical repo knowledge.
146+
113147
## Adapter rule
114148

115149
If an agent expects a specific directory such as `.agents/skills/` or `.claude/skills/`, create that as an adapter target, not as the primary source.
@@ -160,6 +194,7 @@ Avoid making Workspace Hub responsible for launching or orchestrating agent-spec
160194
- local secrets and machine paths last
161195
- repo opt-in, never mandatory
162196
- no agent setup should be required to run a repo normally
197+
- promote durable local knowledge into tracked files when it becomes generally useful
163198

164199
## Practical outcome
165200

0 commit comments

Comments
 (0)