| 123456789101112131415161718192021 |
- import { describe, expect, test } from "bun:test"
- import { Model } from "@opencode-ai/llm"
- import * as OpenAIChat from "@opencode-ai/llm/protocols/openai-chat"
- import { SessionRunnerSystemPrompt } from "@opencode-ai/core/session/runner/system-prompt"
- const prompt = (id: string) =>
- SessionRunnerSystemPrompt.provider(Model.make({ id, provider: "test", route: OpenAIChat.route }))
- describe("SessionRunnerSystemPrompt", () => {
- test("selects the legacy provider-family prompts from the model id", () => {
- expect(prompt("gpt-5")).toContain("You are OpenCode, You and the user share the same workspace")
- expect(prompt("gpt-4.1")).toContain("THE PROBLEM CAN NOT BE SOLVED WITHOUT EXTENSIVE INTERNET RESEARCH")
- expect(prompt("o3")).toContain("THE PROBLEM CAN NOT BE SOLVED WITHOUT EXTENSIVE INTERNET RESEARCH")
- expect(prompt("gpt-5-codex")).toContain("## Editing constraints")
- expect(prompt("gemini-2.5-pro")).toContain("# Core Mandates")
- expect(prompt("claude-sonnet-4")).toContain("# Professional objectivity")
- expect(prompt("kimi-k2")).toContain("# Prompt and Tool Use")
- expect(prompt("trinity")).toContain("what command should I run to list files")
- expect(prompt("llama-3.3")).toContain("You are opencode, an interactive CLI tool")
- })
- })
|