Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
73c522e
feat(career): add first-run profile discovery
avabbbb Sep 25, 2026
bb2fb36
feat(career): add daily career brief
avabbbb Sep 25, 2026
d89323f
docs: record daily career brief checkpoint
avabbbb Sep 25, 2026
d3508c8
feat(career): add job saved assessment plan
avabbbb Sep 25, 2026
0d9df52
docs: record job assessment checkpoint
avabbbb Sep 25, 2026
6e41923
feat(career): add interview prep and debrief lifecycle
avabbbb Sep 26, 2026
ed2dc49
feat(career): enrich CareerSnapshot/DailyCareerContext with resume/pi…
avabbbb Sep 26, 2026
2668851
feat(career): preserve resume reengagement implementation checkpoint
avabbbb Sep 26, 2026
8c5a193
feat(career): complete proactive career director slices
avabbbb Sep 26, 2026
5e56a9b
docs: refresh proactive career director handoff
avabbbb Sep 26, 2026
430d2be
fix(career): bound Codex reasoning for director tasks
avabbbb Sep 26, 2026
58f485b
docs: confirm proactive branch main baseline
avabbbb Sep 26, 2026
1921cb1
fix(career): never show prepared state without a real delivery artifact
avabbbb Sep 27, 2026
1d3cca1
refactor(career-director): inherit canonical embedded Pi runtime
avabbbb Sep 27, 2026
c6a7cc0
refactor(career-director): accept embedded Pi provider aliases
avabbbb Sep 27, 2026
dd4e599
feat(career-director): add read-only embedded Pi skill surface
avabbbb Sep 27, 2026
e8041c1
fix(automation): preserve Role Intelligence and route Director throug…
avabbbb Sep 27, 2026
af44714
refactor(career-director): run proactive reasoning on embedded Pi
avabbbb Sep 27, 2026
5454f7e
test(career-director): converge runtime expectations on embedded Pi
avabbbb Sep 27, 2026
f19dfce
fix(career-director): degrade gracefully without agent
avabbbb Sep 27, 2026
9c00f26
merge: sync latest main before PR review
avabbbb Sep 27, 2026
c63c418
test(e2e): assert blocked director in interview smoke
avabbbb Sep 27, 2026
85d7a17
test(e2e): verify blocked Career Director worker soak
avabbbb Sep 27, 2026
afa59f6
fix(runtime): persist task failure events atomically
avabbbb Sep 27, 2026
6cee387
test(e2e): align concurrency smoke with no-agent contract
avabbbb Sep 27, 2026
0697ea0
fix(release): exclude checksums from PII scan
avabbbb Sep 27, 2026
6665d3e
fix(onboarding): use public OfferU skill source
avabbbb Sep 27, 2026
46378f0
docs(evals): dogfooding session report — onboarding → profile import …
avabbbb Sep 29, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion .agents/skills/offeru/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,24 @@ user-invocable: true
argument-hint: "[skill-id | goal | JD/URL]"
---

<!-- generated: offeru-skill-registry@2026-07-30.2 sha256=aaed3fc9f2d46ef3564d49f1a20fdd408c03779eea2554b710b7274118406f23 -->
<!-- generated: offeru-skill-registry@2026-09-27.1 sha256=6c2d1166b922514fa61f8b4e713b9f29663b19a4d78516de6770b33d8cc26bcf -->

# OfferU External-Agent Router

Work from `backend/`. The live CLI manifest is the source of truth; this generated file contains no business workflow definitions.

## Install in the Agent you are using

The canonical public Skill is `https://raw.githubusercontent.com/avabbbb/OfferU/main/.agents/skills/offeru/SKILL.md`. Install that file in the active Agent. Do not use the local runtime URL as the Skill download source.

When the Agent is outside an OfferU source checkout, the running local OfferU can provide its current-install projection at `http://127.0.0.1:8766/api/agent/runtime/skill`. Read that local projection only to obtain the runtime-specific CLI command; it is not the public Skill distribution source. If the local runtime cannot be reached, report that the connection is unavailable and do not guess a checkout path. Never use raw HTTP for OfferU business data or Operations.

Install only `offeru/SKILL.md` in a documented user-level Skills directory. Prefer the shared `~/.agents/skills/offeru/SKILL.md` location when the active Agent documents support for it. Otherwise use that Agent's native user-level location; examples include `~/.claude/skills/offeru/SKILL.md`, `~/.pi/agent/skills/offeru/SKILL.md`, `~/.config/opencode/skills/offeru/SKILL.md`, `~/.gemini/skills/offeru/SKILL.md`, `~/.omp/agent/skills/offeru/SKILL.md`, and `~/.codebuddy/skills/offeru/SKILL.md`. Resolve home/config overrides only from documented environment variables or the active Agent's own help. Never infer a location from another Agent or write into a project directory just to make discovery work.

If this Agent only supports importing Skills through its own UI, or has no documented Skill loader, do not change its settings or imitate its internal package format. Tell the user the exact supported import step or limitation and do not claim the Skill is installed or the connection is verified.

Do not change Agent settings, account/login, model, credentials, proxy, or unrelated files. Do not overwrite a non-OfferU Skill at the target path. Start a fresh Agent session if the host only discovers Skills at startup.

## Start every task

```powershell
Expand Down Expand Up @@ -39,6 +51,8 @@ OfferU is the Career OS state/tool authority, not the exclusive career-methodolo

## Integration verification

When the user pasted the OfferU connection prompt, select the live `connection_bootstrap` Skill, inspect the `get_current_view` schema, and execute that read-only Operation once. Report only the current page and explicit selection, then wait. This bootstrap read does not authorize reading other career data.

When OfferU asks for integration verification, select the live `connection_probe` Skill, inspect `get_agent_connection_nonce`, execute it with the supplied `provider_id` and `challenge_id`, and return the nonce unchanged. Never read challenge storage directly or guess a nonce.

## Control rules
Expand Down
2 changes: 1 addition & 1 deletion .claude/agents/offeru-operator.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ skills:
- offeru
---

<!-- generated: offeru-skill-registry@2026-07-30.2 sha256=aaed3fc9f2d46ef3564d49f1a20fdd408c03779eea2554b710b7274118406f23 -->
<!-- generated: offeru-skill-registry@2026-09-27.1 sha256=6c2d1166b922514fa61f8b4e713b9f29663b19a4d78516de6770b33d8cc26bcf -->

You are the OfferU operator subagent. Work from `backend/` and treat the live CLI manifest as the only capability source.

Expand Down
16 changes: 15 additions & 1 deletion .claude/skills/offeru/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,24 @@ user-invocable: true
argument-hint: "[skill-id | goal | JD/URL]"
---

<!-- generated: offeru-skill-registry@2026-07-30.2 sha256=aaed3fc9f2d46ef3564d49f1a20fdd408c03779eea2554b710b7274118406f23 -->
<!-- generated: offeru-skill-registry@2026-09-27.1 sha256=6c2d1166b922514fa61f8b4e713b9f29663b19a4d78516de6770b33d8cc26bcf -->

# OfferU External-Agent Router

Work from `backend/`. The live CLI manifest is the source of truth; this generated file contains no business workflow definitions.

## Install in the Agent you are using

The canonical public Skill is `https://raw.githubusercontent.com/avabbbb/OfferU/main/.agents/skills/offeru/SKILL.md`. Install that file in the active Agent. Do not use the local runtime URL as the Skill download source.

When the Agent is outside an OfferU source checkout, the running local OfferU can provide its current-install projection at `http://127.0.0.1:8766/api/agent/runtime/skill`. Read that local projection only to obtain the runtime-specific CLI command; it is not the public Skill distribution source. If the local runtime cannot be reached, report that the connection is unavailable and do not guess a checkout path. Never use raw HTTP for OfferU business data or Operations.

Install only `offeru/SKILL.md` in a documented user-level Skills directory. Prefer the shared `~/.agents/skills/offeru/SKILL.md` location when the active Agent documents support for it. Otherwise use that Agent's native user-level location; examples include `~/.claude/skills/offeru/SKILL.md`, `~/.pi/agent/skills/offeru/SKILL.md`, `~/.config/opencode/skills/offeru/SKILL.md`, `~/.gemini/skills/offeru/SKILL.md`, `~/.omp/agent/skills/offeru/SKILL.md`, and `~/.codebuddy/skills/offeru/SKILL.md`. Resolve home/config overrides only from documented environment variables or the active Agent's own help. Never infer a location from another Agent or write into a project directory just to make discovery work.

If this Agent only supports importing Skills through its own UI, or has no documented Skill loader, do not change its settings or imitate its internal package format. Tell the user the exact supported import step or limitation and do not claim the Skill is installed or the connection is verified.

Do not change Agent settings, account/login, model, credentials, proxy, or unrelated files. Do not overwrite a non-OfferU Skill at the target path. Start a fresh Agent session if the host only discovers Skills at startup.

## Start every task

```powershell
Expand Down Expand Up @@ -39,6 +51,8 @@ OfferU is the Career OS state/tool authority, not the exclusive career-methodolo

## Integration verification

When the user pasted the OfferU connection prompt, select the live `connection_bootstrap` Skill, inspect the `get_current_view` schema, and execute that read-only Operation once. Report only the current page and explicit selection, then wait. This bootstrap read does not authorize reading other career data.

When OfferU asks for integration verification, select the live `connection_probe` Skill, inspect `get_agent_connection_nonce`, execute it with the supplied `provider_id` and `challenge_id`, and return the nonce unchanged. Never read challenge storage directly or guess a nonce.

## Control rules
Expand Down
2 changes: 1 addition & 1 deletion .codex/agents/offeru-operator.toml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# generated: offeru-skill-registry@2026-07-30.2 sha256=aaed3fc9f2d46ef3564d49f1a20fdd408c03779eea2554b710b7274118406f23
# generated: offeru-skill-registry@2026-09-27.1 sha256=6c2d1166b922514fa61f8b4e713b9f29663b19a4d78516de6770b33d8cc26bcf
name = "offeru-operator"
description = "Operate OfferU through its live Skill Registry and atomic CLI control contract."
developer_instructions = """
Expand Down
16 changes: 15 additions & 1 deletion .copilot/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,24 @@ user-invocable: true
argument-hint: "[skill-id | goal | JD/URL]"
---

<!-- generated: offeru-skill-registry@2026-07-30.2 sha256=aaed3fc9f2d46ef3564d49f1a20fdd408c03779eea2554b710b7274118406f23 -->
<!-- generated: offeru-skill-registry@2026-09-27.1 sha256=6c2d1166b922514fa61f8b4e713b9f29663b19a4d78516de6770b33d8cc26bcf -->

# OfferU External-Agent Router

Work from `backend/`. The live CLI manifest is the source of truth; this generated file contains no business workflow definitions.

## Install in the Agent you are using

The canonical public Skill is `https://raw.githubusercontent.com/avabbbb/OfferU/main/.agents/skills/offeru/SKILL.md`. Install that file in the active Agent. Do not use the local runtime URL as the Skill download source.

When the Agent is outside an OfferU source checkout, the running local OfferU can provide its current-install projection at `http://127.0.0.1:8766/api/agent/runtime/skill`. Read that local projection only to obtain the runtime-specific CLI command; it is not the public Skill distribution source. If the local runtime cannot be reached, report that the connection is unavailable and do not guess a checkout path. Never use raw HTTP for OfferU business data or Operations.

Install only `offeru/SKILL.md` in a documented user-level Skills directory. Prefer the shared `~/.agents/skills/offeru/SKILL.md` location when the active Agent documents support for it. Otherwise use that Agent's native user-level location; examples include `~/.claude/skills/offeru/SKILL.md`, `~/.pi/agent/skills/offeru/SKILL.md`, `~/.config/opencode/skills/offeru/SKILL.md`, `~/.gemini/skills/offeru/SKILL.md`, `~/.omp/agent/skills/offeru/SKILL.md`, and `~/.codebuddy/skills/offeru/SKILL.md`. Resolve home/config overrides only from documented environment variables or the active Agent's own help. Never infer a location from another Agent or write into a project directory just to make discovery work.

If this Agent only supports importing Skills through its own UI, or has no documented Skill loader, do not change its settings or imitate its internal package format. Tell the user the exact supported import step or limitation and do not claim the Skill is installed or the connection is verified.

Do not change Agent settings, account/login, model, credentials, proxy, or unrelated files. Do not overwrite a non-OfferU Skill at the target path. Start a fresh Agent session if the host only discovers Skills at startup.

## Start every task

```powershell
Expand Down Expand Up @@ -39,6 +51,8 @@ OfferU is the Career OS state/tool authority, not the exclusive career-methodolo

## Integration verification

When the user pasted the OfferU connection prompt, select the live `connection_bootstrap` Skill, inspect the `get_current_view` schema, and execute that read-only Operation once. Report only the current page and explicit selection, then wait. This bootstrap read does not authorize reading other career data.

When OfferU asks for integration verification, select the live `connection_probe` Skill, inspect `get_agent_connection_nonce`, execute it with the supplied `provider_id` and `challenge_id`, and return the nonce unchanged. Never read challenge storage directly or guess a nonce.

## Control rules
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ current Eval evidence

当前必须保持的产品模型:

- **App-first 是普通用户默认入口**:安装 OfferU → 自动发现可用本地 Agent → 支持时自动投影/注册 OfferU Skill → 建立 Profile → 保存 Job → 打开 canonical Job Workspace → Today 引导下一步。
- **App-first 是普通用户默认入口**:安装 OfferU → 复制一条通用接入提示词 → 粘贴到正在使用的本地 Coding Agent → Agent 从公开 GitHub 源获取 canonical OfferU Skill,并按其中适配当前宿主的文档完成接入 → 只读回读验证 → 建立 Profile → 保存 Job → 打开 canonical Job Workspace → Today 引导下一步。需要时,运行中的 OfferU 只提供当前安装的 CLI 投影,不承担 Skill 发布/下载。普通 UI 不展示宿主选择列表;复制提示词不等于已连接。
- **Skill-first 是高级用户入口**:用户可从 Codex / Claude Code / WorkBuddy / OpenCode / OMP / Pi 等支持宿主直接调用 OfferU Skill,但最终必须解析或创建同一个 canonical Job / Application 状态。
- **Skill 是 Agent entry,不是第二套产品状态**;不得创建 Agent-only Job、隐藏 workspace、重复 Profile 或平行 Application state。
- **Job / Opportunity 是持久 Job Workspace**:Job Snapshot、Role Intelligence、Evidence Map、Application Materials、Interview、Timeline / Next Action 都属于同一机会工作区。
Expand Down
4 changes: 2 additions & 2 deletions GOAL.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ Event → Rule → CareerTask → Agent / Runtime → Operation

普通用户主路径:

Install → Launch → auto-detect local AI → 在支持时自动投影/注册 OfferU Skill → Resume + explicitly authorized memory → Profile → save first Job → create/open canonical Job Workspace → optionally connect job-search inbox → Today / Next Best Actions。
Install → Launch → copy one generic OfferU connection prompt → paste it into the local coding Agent already in use → the Agent downloads the canonical OfferU Skill from public GitHub and follows its documented host setup → the local runtime supplies an installation-specific CLI projection only if needed → optional read-only access verification → Resume + explicitly authorized memory → Profile → save first Job → create/open canonical Job Workspace → optionally connect job-search inbox → Today / Next Best Actions。

高级用户允许从支持的外部 Agent 通过 OfferU Skill 直接开始一个 Job,但最终必须解析/创建同一个 canonical Job Workspace,不能形成 Agent-only 第二套项目状态。

Expand Down Expand Up @@ -272,4 +272,4 @@ BLOCKED_BY_TRUE_EXTERNAL_RELEASE_REQUIREMENT

最终报告必须给出 Release version、Product capabilities、Architecture、实际 Test matrix、每条 Golden Path 证据、Migration matrix、Backup/restore、Security、Soak、Performance、Clean install、Upgrade、Signed artifacts、optional integrations、Known Issues 和唯一 Final verdict。

唯一完成标准是:陌生用户能否安全、稳定、独立地使用 OfferU 完成真实求职工作,并在失败、重启、升级和数据恢复中始终保持对职业事实与求职状态的控制。
唯一完成标准是:陌生用户能否安全、稳定、独立地使用 OfferU 完成真实求职工作,并在失败、重启、升级和数据恢复中始终保持对职业事实与求职状态的控制。
Loading
Loading