Same canonical content, three thin adapters; FastMCP scaffold with the five gateway tools (layer-1 guard enforced by the lesson schema); M365 spec with assumed minimal DDL, read-only queries, extraction-time anonymization and a review-queue with no auto-merge. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PDKeXvpT6tENSvyQGLV1Uq
1.3 KiB
1.3 KiB
ChatGPT adapter — spec
Build target from the same canonical content (no content changes).
Bundle per profession (build_openai.py → dist/<slug>/)
instructions.md— system instruction generated from the canonical profession content: role framing, retrieval cascade note, and the FULL §3 contribution behaviour (switch, full-text confirmation, duplicate check, anonymization, PR-only) including the canonical trigger prompt. Fits the 8k-char Custom-GPT instruction limit (truncates competence lists, links the knowledge files instead).knowledge/— the competence files + knowledge.md as upload files for the GPT's knowledge store (retrieval).
Integration (manual, per Custom GPT)
- Create a Custom GPT; paste
instructions.mdas Instructions. - Upload
knowledge/*as Knowledge. - Write path: add an Action from
openapi.yaml(this folder) — it fronts the SkillFactor MCP gateway's HTTP facade (services/skillfactor-mcp, endpoint/actions/propose_lessonetc.). Auth: API key header (SKILLFACTOR_TOKEN), no key material in this repo (.env.example only).
Status
- Generator scaffold: RUNNABLE (
build_openai.py). openapi.yaml: complete spec for propose_lesson/get_profession_context.- The gateway HTTP facade itself is spec-level (see services/…/SPEC.md).