job-forge 2.7.0 → 2.9.0
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.
- package/.opencode/agents/general-free.md +0 -5
- package/.opencode/agents/general-paid.md +0 -2
- package/.opencode/agents/glm-minimal.md +0 -3
- package/iso/agents/general-free.md +4 -9
- package/iso/agents/general-paid.md +4 -6
- package/iso/agents/glm-minimal.md +4 -7
- package/models.yaml +38 -21
- package/opencode.json +4 -9
- package/package.json +4 -4
|
@@ -16,11 +16,6 @@ tools:
|
|
|
16
16
|
gmail_get_message: true
|
|
17
17
|
temperature: 0.1
|
|
18
18
|
reasoningEffort: minimal
|
|
19
|
-
fallback_models:
|
|
20
|
-
- opencode/minimax-m2.5-free
|
|
21
|
-
- opencode/nemotron-3-super-free
|
|
22
|
-
- opencode-go/minimax-m2.7
|
|
23
|
-
- opencode/glm-5.1
|
|
24
19
|
---
|
|
25
20
|
|
|
26
21
|
You are the @general-free subagent. You run on a free-tier model, which means the orchestrator has delegated this task to you **specifically because the work is procedural**: deterministic steps, scripted outputs, no nuanced writing required.
|
|
@@ -7,8 +7,6 @@ tools:
|
|
|
7
7
|
gmail_*: false
|
|
8
8
|
temperature: 0.3
|
|
9
9
|
reasoningEffort: medium
|
|
10
|
-
fallback_models:
|
|
11
|
-
- opencode/claude-haiku-4-5
|
|
12
10
|
---
|
|
13
11
|
|
|
14
12
|
You are the @general-paid subagent. The orchestrator delegated this task to you because it requires quality writing or judgment — the kind of work `@general-free` isn't well-suited for.
|
|
@@ -13,9 +13,6 @@ tools:
|
|
|
13
13
|
task: false
|
|
14
14
|
temperature: 0
|
|
15
15
|
reasoningEffort: none
|
|
16
|
-
fallback_models:
|
|
17
|
-
- opencode/big-pickle
|
|
18
|
-
- opencode/nemotron-3-super-free
|
|
19
16
|
---
|
|
20
17
|
|
|
21
18
|
You are the @glm-minimal subagent. You handle narrow, one-shot extractions where the orchestrator has pre-digested the context and just needs you to do a specific transform.
|
|
@@ -1,19 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Procedural worker on free-tier model. Use for form filling via Geometra, tracker updates, TSV merges, scan dedup, OTP retrieval, and other mechanical/scripted tasks where quality-sensitive text generation is NOT required.
|
|
3
3
|
targets:
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
#
|
|
4
|
+
# No inline model: iso-route 0.2.0+ stamps provider/model from the
|
|
5
|
+
# per-target resolution in models.yaml (role = filename slug). Claude
|
|
6
|
+
# Code reads .claude/iso-route.resolved.json; OpenCode reads
|
|
7
|
+
# opencode.json's agent.<slug>.model (iso-harness 0.6.0+).
|
|
7
8
|
opencode:
|
|
8
9
|
mode: subagent
|
|
9
|
-
model: opencode/big-pickle
|
|
10
10
|
temperature: 0.1
|
|
11
11
|
reasoningEffort: minimal
|
|
12
|
-
fallback_models:
|
|
13
|
-
- opencode/minimax-m2.5-free
|
|
14
|
-
- opencode/nemotron-3-super-free
|
|
15
|
-
- opencode-go/minimax-m2.7
|
|
16
|
-
- opencode/glm-5.1
|
|
17
12
|
tools:
|
|
18
13
|
geometra_connect: true
|
|
19
14
|
geometra_page_model: true
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Quality-sensitive worker on paid model. Use for offer evaluation narratives (Blocks A-F), cover letter generation, "Why X?" form answers, interview STAR stories, and other tasks where writing quality and judgment matter.
|
|
3
3
|
targets:
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
#
|
|
4
|
+
# No inline model: iso-route 0.2.0+ stamps provider/model from the
|
|
5
|
+
# per-target resolution in models.yaml (role = filename slug). Claude
|
|
6
|
+
# Code reads .claude/iso-route.resolved.json; OpenCode reads
|
|
7
|
+
# opencode.json's agent.<slug>.model (iso-harness 0.6.0+).
|
|
7
8
|
opencode:
|
|
8
9
|
mode: subagent
|
|
9
|
-
model: opencode/glm-5.1
|
|
10
10
|
temperature: 0.3
|
|
11
11
|
reasoningEffort: medium
|
|
12
|
-
fallback_models:
|
|
13
|
-
- opencode/claude-haiku-4-5
|
|
14
12
|
tools:
|
|
15
13
|
geometra_*: false
|
|
16
14
|
gmail_*: false
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Narrow-scope extractor on free-tier model. Use for single-purpose tasks where the orchestrator passes the exact input and expects a small, structured output — e.g., "extract these 8 fields from this JD text" or "parse this form schema into a label→type map". NOT for multi-step workflows.
|
|
3
3
|
targets:
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
#
|
|
4
|
+
# No inline model: iso-route 0.2.0+ stamps provider/model from the
|
|
5
|
+
# per-target resolution in models.yaml (role = filename slug). Claude
|
|
6
|
+
# Code reads .claude/iso-route.resolved.json; OpenCode reads
|
|
7
|
+
# opencode.json's agent.<slug>.model (iso-harness 0.6.0+).
|
|
7
8
|
opencode:
|
|
8
9
|
mode: subagent
|
|
9
|
-
model: opencode/minimax-m2.5-free
|
|
10
10
|
temperature: 0
|
|
11
11
|
reasoningEffort: none
|
|
12
|
-
fallback_models:
|
|
13
|
-
- opencode/big-pickle
|
|
14
|
-
- opencode/nemotron-3-super-free
|
|
15
12
|
tools:
|
|
16
13
|
geometra_*: false
|
|
17
14
|
gmail_*: false
|
package/models.yaml
CHANGED
|
@@ -1,46 +1,63 @@
|
|
|
1
1
|
# JobForge model policy — one authored source, fanned out to each harness.
|
|
2
2
|
#
|
|
3
3
|
# `@razroo/iso-route build` reads this file and writes:
|
|
4
|
-
# - .claude/settings.json
|
|
4
|
+
# - .claude/settings.json (default Claude Code model)
|
|
5
5
|
# - .claude/iso-route.resolved.json (role map iso-harness stamps onto
|
|
6
6
|
# .claude/agents/*.md frontmatter)
|
|
7
|
-
# - .codex/config.toml
|
|
8
|
-
#
|
|
9
|
-
#
|
|
10
|
-
#
|
|
11
|
-
#
|
|
12
|
-
#
|
|
13
|
-
#
|
|
14
|
-
#
|
|
15
|
-
# way to bind a model to a rule or agent)
|
|
7
|
+
# - .codex/config.toml (model + [profiles.*] + providers;
|
|
8
|
+
# iso-harness merges [mcp_servers.*]
|
|
9
|
+
# on top of this via v0.5+)
|
|
10
|
+
# - opencode.json (top-level + per-agent overrides;
|
|
11
|
+
# iso-harness preserves these when
|
|
12
|
+
# layering mcp on top)
|
|
13
|
+
# - .cursor/iso-route.md (advisory — Cursor has no
|
|
14
|
+
# programmatic model binding)
|
|
16
15
|
#
|
|
17
|
-
#
|
|
18
|
-
#
|
|
19
|
-
#
|
|
16
|
+
# Each role maps 1:1 to a subagent file in iso/agents/ (by filename slug).
|
|
17
|
+
# The `targets.<harness>` sub-object overrides provider+model when
|
|
18
|
+
# emitting for that specific harness; otherwise the generic policy on the
|
|
19
|
+
# role is used (iso-route v0.2+).
|
|
20
20
|
|
|
21
21
|
default:
|
|
22
22
|
provider: anthropic
|
|
23
23
|
model: claude-sonnet-4-6
|
|
24
|
+
targets:
|
|
25
|
+
# OpenCode users default to the OpenCode proxy's paid-tier chat model
|
|
26
|
+
# for the top-level (non-subagent) session.
|
|
27
|
+
opencode:
|
|
28
|
+
provider: opencode
|
|
29
|
+
model: opencode/glm-5.1
|
|
24
30
|
|
|
25
31
|
roles:
|
|
26
32
|
# @general-free — procedural worker (form-fill, TSV merge, OTP retrieval,
|
|
27
|
-
# scan extraction).
|
|
28
|
-
#
|
|
33
|
+
# scan metadata extraction). Runs on each harness's cheapest-reliable
|
|
34
|
+
# model; OpenCode gets the free-tier proxy so batch applies cost $0.
|
|
29
35
|
general-free:
|
|
30
36
|
provider: anthropic
|
|
31
37
|
model: claude-haiku-4-5
|
|
38
|
+
targets:
|
|
39
|
+
opencode:
|
|
40
|
+
provider: opencode
|
|
41
|
+
model: opencode/big-pickle
|
|
32
42
|
|
|
33
43
|
# @general-paid — quality-sensitive worker (Blocks A-F evaluation, cover
|
|
34
|
-
# letters, STAR stories, LinkedIn outreach).
|
|
35
|
-
#
|
|
44
|
+
# letters, STAR stories, LinkedIn outreach). Upgrade target for
|
|
45
|
+
# high-stakes applies per [D3] in iso/instructions.md.
|
|
36
46
|
general-paid:
|
|
37
47
|
provider: anthropic
|
|
38
48
|
model: claude-sonnet-4-6
|
|
49
|
+
targets:
|
|
50
|
+
opencode:
|
|
51
|
+
provider: opencode
|
|
52
|
+
model: opencode/glm-5.1
|
|
39
53
|
|
|
40
|
-
# @glm-minimal — narrow ≤5K-input one-shot extractor / classifier.
|
|
41
|
-
#
|
|
42
|
-
#
|
|
43
|
-
# against; on other harnesses, Haiku is the closest equivalent.
|
|
54
|
+
# @glm-minimal — narrow ≤5K-input one-shot extractor / classifier. Named
|
|
55
|
+
# for its original tuning target (Minimax on the OpenCode proxy); on
|
|
56
|
+
# harnesses without that proxy it falls through to a cheap general model.
|
|
44
57
|
glm-minimal:
|
|
45
58
|
provider: anthropic
|
|
46
59
|
model: claude-haiku-4-5
|
|
60
|
+
targets:
|
|
61
|
+
opencode:
|
|
62
|
+
provider: opencode
|
|
63
|
+
model: opencode/minimax-m2.5-free
|
package/opencode.json
CHANGED
|
@@ -1,20 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://opencode.ai/config.json",
|
|
3
|
-
"model": "
|
|
3
|
+
"model": "opencode/glm-5.1",
|
|
4
4
|
"agent": {
|
|
5
5
|
"general-free": {
|
|
6
|
-
"model": "
|
|
6
|
+
"model": "opencode/big-pickle"
|
|
7
7
|
},
|
|
8
8
|
"general-paid": {
|
|
9
|
-
"model": "
|
|
9
|
+
"model": "opencode/glm-5.1"
|
|
10
10
|
},
|
|
11
11
|
"glm-minimal": {
|
|
12
|
-
"model": "
|
|
13
|
-
}
|
|
14
|
-
},
|
|
15
|
-
"provider": {
|
|
16
|
-
"anthropic": {
|
|
17
|
-
"npm": "@ai-sdk/anthropic"
|
|
12
|
+
"model": "opencode/minimax-m2.5-free"
|
|
18
13
|
}
|
|
19
14
|
},
|
|
20
15
|
"mcp": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "job-forge",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.9.0",
|
|
4
4
|
"description": "AI-powered job search pipeline built on opencode",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -82,9 +82,9 @@
|
|
|
82
82
|
"playwright": "^1.58.1"
|
|
83
83
|
},
|
|
84
84
|
"devDependencies": {
|
|
85
|
-
"@razroo/iso": "^0.2.
|
|
86
|
-
"@razroo/iso-harness": "^0.
|
|
87
|
-
"@razroo/iso-route": "^0.
|
|
85
|
+
"@razroo/iso": "^0.2.3",
|
|
86
|
+
"@razroo/iso-harness": "^0.6.0",
|
|
87
|
+
"@razroo/iso-route": "^0.2.0",
|
|
88
88
|
"@razroo/iso-trace": "^0.1.0"
|
|
89
89
|
}
|
|
90
90
|
}
|