chore(opencode): remove scout agent (#30435)
This commit is contained in:
@@ -11,7 +11,6 @@ import { ProviderTransform } from "@/provider/transform"
|
||||
import PROMPT_GENERATE from "./generate.txt"
|
||||
import PROMPT_COMPACTION from "./prompt/compaction.txt"
|
||||
import PROMPT_EXPLORE from "./prompt/explore.txt"
|
||||
import PROMPT_SCOUT from "./prompt/scout.txt"
|
||||
import PROMPT_SUMMARY from "./prompt/summary.txt"
|
||||
import PROMPT_TITLE from "./prompt/title.txt"
|
||||
import { Permission } from "@/permission"
|
||||
@@ -22,7 +21,6 @@ import { Plugin } from "@/plugin"
|
||||
import { Skill } from "../skill"
|
||||
import { Effect, Context, Layer, Schema } from "effect"
|
||||
import { InstanceState } from "@/effect/instance-state"
|
||||
import { RuntimeFlags } from "@/effect/runtime-flags"
|
||||
import * as Option from "effect/Option"
|
||||
import * as OtelTracer from "@effect/opentelemetry/Tracer"
|
||||
import { type DeepMutable } from "@opencode-ai/core/schema"
|
||||
@@ -89,7 +87,6 @@ export const layer = Layer.effect(
|
||||
const plugin = yield* Plugin.Service
|
||||
const skill = yield* Skill.Service
|
||||
const provider = yield* Provider.Service
|
||||
const flags = yield* RuntimeFlags.Service
|
||||
|
||||
const state = yield* InstanceState.make<State>(
|
||||
Effect.fn("Agent.state")(function* (ctx) {
|
||||
@@ -115,8 +112,6 @@ export const layer = Layer.effect(
|
||||
question: "deny",
|
||||
plan_enter: "deny",
|
||||
plan_exit: "deny",
|
||||
repo_clone: "deny",
|
||||
repo_overview: "deny",
|
||||
// mirrors github.com/github/gitignore Node.gitignore pattern for .env files
|
||||
read: {
|
||||
"*": "allow",
|
||||
@@ -204,36 +199,6 @@ export const layer = Layer.effect(
|
||||
mode: "subagent",
|
||||
native: true,
|
||||
},
|
||||
...(flags.experimentalScout
|
||||
? {
|
||||
scout: {
|
||||
name: "scout",
|
||||
permission: Permission.merge(
|
||||
defaults,
|
||||
Permission.fromConfig({
|
||||
"*": "deny",
|
||||
grep: "allow",
|
||||
glob: "allow",
|
||||
webfetch: "allow",
|
||||
websearch: "allow",
|
||||
read: "allow",
|
||||
repo_clone: "allow",
|
||||
repo_overview: "allow",
|
||||
external_directory: {
|
||||
...readonlyExternalDirectory,
|
||||
[path.join(Global.Path.repos, "*")]: "allow",
|
||||
},
|
||||
}),
|
||||
user,
|
||||
),
|
||||
description: `Docs and dependency-source specialist. Use this when you need to inspect external documentation, clone dependency repositories into the managed cache, and research library implementation details without modifying the user's workspace.`,
|
||||
prompt: PROMPT_SCOUT,
|
||||
options: {},
|
||||
mode: "subagent" as const,
|
||||
native: true,
|
||||
},
|
||||
}
|
||||
: {}),
|
||||
compaction: {
|
||||
name: "compaction",
|
||||
mode: "primary",
|
||||
@@ -462,7 +427,6 @@ export const defaultLayer = layer.pipe(
|
||||
Layer.provide(Auth.defaultLayer),
|
||||
Layer.provide(Config.defaultLayer),
|
||||
Layer.provide(Skill.defaultLayer),
|
||||
Layer.provide(RuntimeFlags.defaultLayer),
|
||||
)
|
||||
|
||||
export * as Agent from "./agent"
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
You are `scout`, a read-only research agent for external libraries, dependency source, and documentation.
|
||||
|
||||
Your purpose is to investigate code outside the local workspace and return evidence-backed findings without modifying the user's workspace.
|
||||
|
||||
Use this agent when asked to:
|
||||
- inspect dependency repositories or library source
|
||||
- compare local code against upstream implementations
|
||||
- research public GitHub repositories the environment can clone
|
||||
- explain how a library or framework works by reading its source and docs
|
||||
- investigate third-party APIs, workflows, or behavior outside the current workspace
|
||||
|
||||
Working style:
|
||||
1. When the task involves a GitHub repository or dependency source, use `repo_clone` first.
|
||||
2. After cloning, use `Glob`, `Grep`, and `Read` to inspect the cloned repository.
|
||||
3. Use `WebFetch` for official documentation pages when source alone is not enough.
|
||||
4. Prefer direct code and documentation evidence over assumptions.
|
||||
5. If multiple external repositories are relevant, inspect each one before drawing conclusions.
|
||||
|
||||
Research standards:
|
||||
- cite exact absolute file paths and line references whenever possible
|
||||
- separate what is verified from what is inferred
|
||||
- if the answer depends on branch state, note that you are reading the repository's current default clone state unless the caller specifies otherwise
|
||||
- if a repository cannot be cloned or accessed, say so explicitly and continue with whatever evidence is still available
|
||||
- call out uncertainty clearly instead of smoothing over gaps
|
||||
|
||||
Output expectations:
|
||||
- start with the direct answer
|
||||
- then explain the evidence repository by repository or source by source
|
||||
- include file references when relevant
|
||||
- keep the explanation organized and easy to scan
|
||||
|
||||
Constraints:
|
||||
- do not modify files or run tools that change the user's workspace
|
||||
- return absolute file paths for cloned-repo findings in your final response
|
||||
|
||||
Complete the user's research request efficiently and report your findings clearly.
|
||||
Reference in New Issue
Block a user