paperclip/server/src/adapters/index.ts
HenkDz 14d59da316 feat(adapters): external adapter plugin system with dynamic UI parser
- Plugin loader: install/reload/remove/reinstall external adapters
  from npm packages or local directories
- Plugin store persisted at ~/.paperclip/adapter-plugins.json
- Self-healing UI parser resolution with version caching
- UI: Adapter Manager page, dynamic loader, display registry
  with humanized names for unknown adapter types
- Dev watch: exclude adapter-plugins dir from tsx watcher
  to prevent mid-request server restarts during reinstall
- All consumer fallbacks use getAdapterLabel() for consistent display
- AdapterTypeDropdown uses controlled open state for proper close behavior
- Remove hermes-local from built-in UI (externalized to plugin)
- Add docs for external adapters and UI parser contract
2026-04-03 21:11:20 +01:00

26 lines
643 B
TypeScript

export {
getServerAdapter,
listAdapterModels,
listServerAdapters,
findServerAdapter,
detectAdapterModel,
registerServerAdapter,
unregisterServerAdapter,
requireServerAdapter,
} from "./registry.js";
export type {
ServerAdapterModule,
AdapterExecutionContext,
AdapterExecutionResult,
AdapterInvocationMeta,
AdapterEnvironmentCheckLevel,
AdapterEnvironmentCheck,
AdapterEnvironmentTestStatus,
AdapterEnvironmentTestResult,
AdapterEnvironmentTestContext,
AdapterSessionCodec,
UsageSummary,
AdapterAgent,
AdapterRuntime,
} from "@paperclipai/adapter-utils";
export { runningProcesses } from "./utils.js";