Merge #650: jcode as a run mode

Conflict in skills/codeman/SKILL.md (and its plugin mirror): the list of
modes with neither stop nor blocked gained jcode here and the omp
exception from #798 on the release branch; both are kept.

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
This commit is contained in:
Codeman maintainer committed 2026-11-11 20:27:26 +01:00
commit d45b1ff248
66 files changed
+1304 -127

No files matched your search

+14
View File
@@ -58,6 +58,7 @@ import {
type PiConfig,
type GrokConfig,
type CopilotConfig,
type JcodeConfig,
type DeepSeekConfig,
type OmpConfig,
type SessionRemote,
@@ -865,6 +866,8 @@ export class Session extends EventEmitter {
private _grokConfig: GrokConfig | undefined;
// GitHub Copilot configuration (only for mode === 'copilot')
private _copilotConfig: CopilotConfig | undefined;
// jcode configuration (only for mode === 'jcode')
private _jcodeConfig: JcodeConfig | undefined;
// DeepSeek Harness configuration (only for mode === 'deepseek')
private _deepSeekConfig: DeepSeekConfig | undefined;
@@ -1004,6 +1007,8 @@ export class Session extends EventEmitter {
/** Grok configuration (only for mode === 'grok') */
grokConfig?: GrokConfig;
copilotConfig?: CopilotConfig;
/** jcode configuration (only for mode === 'jcode') */
jcodeConfig?: JcodeConfig;
/** DeepSeek Harness configuration (only for mode === 'deepseek') */
deepSeekConfig?: DeepSeekConfig;
/** OMP configuration (only for mode === 'omp') */
@@ -1198,6 +1203,11 @@ export class Session extends EventEmitter {
this._copilotConfig = config.copilotConfig;
}
// Apply jcode configuration
if (config.jcodeConfig) {
this._jcodeConfig = config.jcodeConfig;
}
// Apply env overrides (exported at spawn, not persisted to disk).
// Legacy migration: pre-0.7.2 carried effort as the CLAUDE_CODE_EFFORT_LEVEL env var,
// which hard-locks /effort switching. Extract it into _effort (--settings soft default)
@@ -2527,6 +2537,7 @@ export class Session extends EventEmitter {
piConfig: this._piConfig,
grokConfig: this._grokConfig,
copilotConfig: this._copilotConfig,
jcodeConfig: this._jcodeConfig,
deepSeekConfig: this._deepSeekConfig,
ompConfig: this._ompConfig,
resumeSessionId: this._resumeSessionId,
@@ -2908,6 +2919,7 @@ export class Session extends EventEmitter {
piConfig: this._piConfig,
grokConfig: this._grokConfig,
copilotConfig: this._copilotConfig,
jcodeConfig: this._jcodeConfig,
deepSeekConfig: this._deepSeekConfig,
// OMP resolution/pinning does NOT happen here. This object is built
// EAGERLY — including on every boot-recovery reattach, before anyone
@@ -3426,6 +3438,7 @@ export class Session extends EventEmitter {
piConfig: this._piConfig,
grokConfig: this._grokConfig,
copilotConfig: this._copilotConfig,
jcodeConfig: this._jcodeConfig,
deepSeekConfig: this._deepSeekConfig,
ompConfig: this._ompConfig,
resumeSessionId: this._resumeSessionId,
@@ -4009,6 +4022,7 @@ export class Session extends EventEmitter {
piConfig: this._piConfig,
grokConfig: this._grokConfig,
copilotConfig: this._copilotConfig,
jcodeConfig: this._jcodeConfig,
deepSeekConfig: this._deepSeekConfig,
ompConfig: this._ompConfig,
};