mirror of
https://github.com/alkimake/paperclip.git
synced 2026-06-18 19:50:38 +09:00
79 lines
1.9 KiB
TypeScript
79 lines
1.9 KiB
TypeScript
|
|
import type { AdapterConfigFieldsProps } from "../types";
|
||
|
|
import {
|
||
|
|
Field,
|
||
|
|
ToggleField,
|
||
|
|
DraftInput,
|
||
|
|
DraftNumberInput,
|
||
|
|
help,
|
||
|
|
} from "../../components/agent-config-primitives";
|
||
|
|
|
||
|
|
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";
|
||
|
|
|
||
|
|
export function ClaudeLocalConfigFields({
|
||
|
|
isCreate,
|
||
|
|
values,
|
||
|
|
set,
|
||
|
|
config,
|
||
|
|
eff,
|
||
|
|
mark,
|
||
|
|
}: AdapterConfigFieldsProps) {
|
||
|
|
return (
|
||
|
|
<>
|
||
|
|
<ToggleField
|
||
|
|
label="Skip permissions"
|
||
|
|
hint={help.dangerouslySkipPermissions}
|
||
|
|
checked={
|
||
|
|
isCreate
|
||
|
|
? values!.dangerouslySkipPermissions
|
||
|
|
: eff(
|
||
|
|
"adapterConfig",
|
||
|
|
"dangerouslySkipPermissions",
|
||
|
|
config.dangerouslySkipPermissions !== false,
|
||
|
|
)
|
||
|
|
}
|
||
|
|
onChange={(v) =>
|
||
|
|
isCreate
|
||
|
|
? set!({ dangerouslySkipPermissions: v })
|
||
|
|
: mark("adapterConfig", "dangerouslySkipPermissions", v)
|
||
|
|
}
|
||
|
|
/>
|
||
|
|
|
||
|
|
{/* Max turns — only shown in advanced section context, rendered here for availability */}
|
||
|
|
</>
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
export function ClaudeLocalAdvancedFields({
|
||
|
|
isCreate,
|
||
|
|
values,
|
||
|
|
set,
|
||
|
|
config,
|
||
|
|
eff,
|
||
|
|
mark,
|
||
|
|
}: AdapterConfigFieldsProps) {
|
||
|
|
return (
|
||
|
|
<Field label="Max turns per run" hint={help.maxTurnsPerRun}>
|
||
|
|
{isCreate ? (
|
||
|
|
<input
|
||
|
|
type="number"
|
||
|
|
className={inputClass}
|
||
|
|
value={values!.maxTurnsPerRun}
|
||
|
|
onChange={(e) => set!({ maxTurnsPerRun: Number(e.target.value) })}
|
||
|
|
/>
|
||
|
|
) : (
|
||
|
|
<DraftNumberInput
|
||
|
|
value={eff(
|
||
|
|
"adapterConfig",
|
||
|
|
"maxTurnsPerRun",
|
||
|
|
Number(config.maxTurnsPerRun ?? 80),
|
||
|
|
)}
|
||
|
|
onCommit={(v) => mark("adapterConfig", "maxTurnsPerRun", v || 80)}
|
||
|
|
immediate
|
||
|
|
className={inputClass}
|
||
|
|
/>
|
||
|
|
)}
|
||
|
|
</Field>
|
||
|
|
);
|
||
|
|
}
|