f884cbab78
Re-align phase1 with upstream: hermes_local ships via hermes-paperclip-adapter on the server and UI (hermes-local module). Fixes ERR_PNPM_OUTDATED_LOCKFILE from server/package.json missing a dep still present in the lockfile. Add shared BUILTIN_ADAPTER_TYPES and skip external plugin registration when it would override a built-in type. Docs list Hermes as built-in; Droid remains the primary external example. Made-with: Cursor
50 lines
1.5 KiB
TypeScript
50 lines
1.5 KiB
TypeScript
import type { AdapterConfigFieldsProps } from "../types";
|
|
import {
|
|
Field,
|
|
DraftInput,
|
|
} from "../../components/agent-config-primitives";
|
|
import { ChoosePathButton } from "../../components/PathInstructionsModal";
|
|
|
|
const inputClass =
|
|
"w-full rounded-md border border-border px-2.5 py-1.5 bg-transparent outline-none text-sm font-mono placeholder:text-muted-foreground/40";
|
|
const instructionsFileHint =
|
|
"Absolute path to a markdown file (e.g. AGENTS.md) that defines this agent's behavior. Injected into the system prompt at runtime.";
|
|
|
|
export function HermesLocalConfigFields({
|
|
isCreate,
|
|
values,
|
|
set,
|
|
config,
|
|
eff,
|
|
mark,
|
|
hideInstructionsFile,
|
|
}: AdapterConfigFieldsProps) {
|
|
if (hideInstructionsFile) return null;
|
|
return (
|
|
<Field label="Agent instructions file" hint={instructionsFileHint}>
|
|
<div className="flex items-center gap-2">
|
|
<DraftInput
|
|
value={
|
|
isCreate
|
|
? values!.instructionsFilePath ?? ""
|
|
: eff(
|
|
"adapterConfig",
|
|
"instructionsFilePath",
|
|
String(config.instructionsFilePath ?? ""),
|
|
)
|
|
}
|
|
onCommit={(v) =>
|
|
isCreate
|
|
? set!({ instructionsFilePath: v })
|
|
: mark("adapterConfig", "instructionsFilePath", v || undefined)
|
|
}
|
|
immediate
|
|
className={inputClass}
|
|
placeholder="/absolute/path/to/AGENTS.md"
|
|
/>
|
|
<ChoosePathButton />
|
|
</div>
|
|
</Field>
|
|
);
|
|
}
|