You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 321ca57
Browse filesBrowse the repository at this point in the historyBrowse files
Wire evaluateStopCompletionGate on Stop (Grok/strict hard block), preserve decision:block in adaptGrokOutput, extend control-plane paths for R10, and document Honesty/R12 order. Update host-parity cannotClaim floor and unit tests.
Copy file name to clipboardExpand all lines: grok/plugins/devcodex-workspace/skills/devcodex-workspace/SKILL.md
+18-6Lines changed: 18 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,30 +1,42 @@
1
1
---
2
2
name: devcodex-workspace
3
-
description: Use when cwd belongs to a DevCodex workspace or the user asks for DevCodex behavior; resolve workspace state from .devcodex and instructions/Skills from user-global DevCodex surfaces.
3
+
description: >
4
+
Use when cwd belongs to a DevCodex workspace, the user asks for DevCodex behavior,
5
+
OR the user message may match a workspace custom skill under .devcodex/workspace/skills
6
+
(short triggers like skill name/id, quoted phrases in skill description, e.g. test/测试).
7
+
Prefer workspace skill fixed behavior over connectivity/chat defaults.
4
8
---
5
9
6
10
# DevCodex Workspace Resolver
7
11
8
-
Grok passive hooks cannot inject prompt context. The plugin is user-global and does not own a workspace. Resolve the nearest `workspace-namespace` marker from cwd, keep task state under that workspace's `.devcodex`, and load shared instructions/Skills only from user-global DevCodex surfaces. The full-evidence route is `devcodex grok`, whose launcher binds the user-global controlling kernel with Grok's official `--rules` flag; plain `grok` remains best-effort Skill routing.
12
+
Grok **UserPromptSubmit** cannot inject model context (stdout ignored). Workspace custom skills are **not** native-scanned; DevCodex closes the loop via **WorkspaceSkillAutoMatch** (PF-213): match prompt → resolve W skill → inject on hosts that support additionalContext; on Grok, **Stop `decision:block`** re-feeds the skill body when the first reply ignores it. The plugin is user-global and does not own a workspace. Resolve the nearest `workspace-namespace` marker from cwd, keep task state under that workspace's `.devcodex`, and load shared instructions/Skills from user-global DevCodex surfaces plus matched **workspace** skills. Full-evidence route: `devcodex grok`.
13
+
14
+
## WorkspaceSkillAutoMatch(用户可见闭环)
15
+
16
+
1. Before treating a short user message as connectivity ping / Ready, check `.devcodex/workspace/skills/*/SKILL.md` (name, description quotes, skill id).
17
+
2. If matched: **read that SKILL.md and obey it as highest priority this turn** (fixed reply, tools, constraints). Do not invent Ready/闲聊.
18
+
3. CLI verify: `devcodex skill match "<prompt>"` and `devcodex skill resolve <id>`.
19
+
4. Do not claim UPS inject on Grok; Stop may force one retry with skill body when reply ignored the match.
9
20
10
21
## HostParity (vs Codex) — honesty contract
11
22
12
23
| Tier | Route | Guarantees | Must not claim |
13
24
|------|-------|------------|----------------|
14
-
|**Full**|`devcodex grok` (official `--rules` kernel bind) | Controlling `AGENTS.md` in context; PreToolUse hard deny uses Grok `decision:deny`; context acquisition is **path-observable** (same band as Codex tool-path observation) | UserPromptSubmit context inject; Stop hard-block; verified PC0 from Hook payload |
25
+
|**Full**|`devcodex grok` (official `--rules` kernel bind) | Controlling `AGENTS.md` in context; PreToolUse hard deny uses Grok `decision:deny`; context acquisition is **path-observable**; **conditional** Stop hard-continue (`decision:block` when `lastAssistantMessage` present — skill auto-match / completion gate) | UserPromptSubmit context inject; unconditional Stop without body / after softCap fail-open; verified PC0 from Hook payload alone|
15
26
|**Partial**| plain `grok` in a child Git project | Best-effort Skill discovery + plugin bridge when trusted; PreToolUse deny adapter still applies when lifecycle is reachable | Full host parity with Codex; `kernelInjected=true` from passive Hook stdout |
16
27
17
-
Platform facts (Grok Build hooks docs): only `PreToolUse`is blocking; passive event stdout is ignored for model context. PC5 must report `Partial` unless Full launcher evidence is present. Do not equate Grok with Codex `hook-enforced` bootstrap.
28
+
Platform facts (Grok Build hooks docs): `PreToolUse`and `Stop`/`SubagentStop` can hard-control; UserPromptSubmit is passive (no inject). PC5 must report `Partial` unless Full launcher evidence is present. Do not equate Grok with Codex UPS inject bootstrap.
18
29
19
30
1. Preserve the semantic intent seed before reading project context.
20
31
2. Bind the nearest valid `workspace-namespace` root from cwd. Do not require or create workspace `AGENTS.md`, `.agents`, `.grok`, `.codex`, `.claude`, `.gemini`, or `.github`.
21
32
3. Resolve the project namespace relative to that workspace and bind runtime state under `.devcodex/<project>/`.
22
-
4. Follow the kernel's intent-first route and read only selected files from `~/.agents/skills/` plus the resulting workspace Profile/context plan.
33
+
4. Follow the kernel's intent-first route and read only selected files from `~/.agents/skills/` plus the resulting workspace Profile/context plan, **and any WorkspaceSkillAutoMatch hit under `.devcodex/workspace/skills/`**.
23
34
5. Use `~/.agents/devcodex/instructions.full.md` only for an explicit fallback; workspace `.devcodex` remains the sole workspace-owned DevCodex surface.
24
35
6. Before substantive output, satisfy the parent kernel's visible entry-check (PC0~PC7). Runtime cannot inject that block on Grok; models still own S07 user-visible output.
25
36
7. Optional assist: call MCP `profile_compose_entry_check` to obtain a portable PC0~PC7 block, or rely on PreToolUse deny reasons that embed the same template when context acquisition is incomplete.
26
37
8. Run `devcodex doctor` / `devcodex status` and read `hostParity` (`HostParityScorecardV1`): `full-capable` means hard path is ready; still use `devcodex grok` for Full session kernel evidence. `partial` lists **failedChecks** and **executable repairSteps** (commands); re-run doctor after each fix.
27
38
9. Execute **GrokTurnChecklist** every non-trivial turn (PF-165 + C16/PI-20260724-01): PC0~PC7 → Intent→Skill mandatory bundle → ContextReadPlan → **scan-hygiene** → **TTFV first delivery** → work/gates → report+memory → honest platform ceiling. Never skip S05/S07/C17 because inject is missing.
39
+
10.**Workspace skill trigger**: if user message matches a W skill, obey that skill before checklist bulk for chat-like turns.
0 commit comments