@plainconceptsplatform/agent-harness 3.3.0 → 3.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -144,9 +144,18 @@ async function syncSkillFiles(src, dest, relativeRoot, cwd, manifest) {
144
144
  await syncSkillFiles(sourcePath, destinationPath, relativePath, cwd, manifest)
145
145
  continue
146
146
  }
147
- if (!await fse.pathExists(destinationPath) || await canUpdateManagedFile(relativePath, cwd, manifest)) {
147
+ const exists = await fse.pathExists(destinationPath)
148
+ if (!exists || await canUpdateManagedFile(relativePath, cwd, manifest)) {
148
149
  await fse.ensureDir(path.dirname(destinationPath))
149
- await fse.copyFile(sourcePath, destinationPath)
150
+ // The managed check ignores what sits between markers, so an untouched file can still hold
151
+ // a filled PC-PROJECT-* slot; copying the source over it erased Numa's sign-in steps.
152
+ const shipped = await fse.readFile(sourcePath, 'utf-8')
153
+ if (exists && HAS_PROJECT_SLOT.test(shipped)) {
154
+ const existing = await fse.readFile(destinationPath, 'utf-8')
155
+ await fse.writeFile(destinationPath, writeProjectSlots(shipped, readProjectSlots(existing)), 'utf-8')
156
+ } else {
157
+ await fse.copyFile(sourcePath, destinationPath)
158
+ }
150
159
  await recordManagedFile(manifest, relativePath, sourcePath)
151
160
  success(`Updated skill: ${relativePath}`)
152
161
  continue
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plainconceptsplatform/agent-harness",
3
- "version": "3.3.0",
3
+ "version": "3.3.1",
4
4
  "description": "Installs the Plain Concepts Platform Harness into any codebase, and keeps it up to date. Wires OpenCode, OpenSpec, codegraph, and agentmemory into a multi-agent workflow that runs on native parallel subagents.",
5
5
  "keywords": [
6
6
  "opencode",