Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions desktop/public/harness-logos/CREDITS.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ license permits redistribution.
| `omp.svg` | [can1357/oh-my-pi](https://github.com/can1357/oh-my-pi) | `667111575ebba136dadfd6989379e7f67e0d40d9` | MIT © 2025 Mario Zechner; © 2025–2026 Can Bölük | `assets/icon.svg` | None |
| `kimi.png` | [MoonshotAI/kimi-cli](https://github.com/MoonshotAI/kimi-cli) | `4a550effdfcb29a25a5d325bf935296cc50cd417` | Apache-2.0; NOTICE: Kimi Code CLI © 2025 Moonshot AI | `web/public/logo.png` | None |
| `grok.svg` | [SpaceXAI brand guidelines](https://x.ai/legal/brand-guidelines) | Retrieved 2026-07-25 | xAI Brand Guidelines: marks may be used to accurately refer to xAI or its services; logos must be used exactly as provided | `SpaceXAI_Grok_Assets.zip` → `Grok_Logomark_Dark.svg` | None |
| `pfterminal.svg` | [agtico/PfTerminal](https://github.com/agtico/PfTerminal) | `5731f16` | Apache-2.0 | `docs/assets/images/pfterminal-logo.svg` | Extracted the square Post Fiat glyph from the wide wordmark (the full lockup is 720×220 and would letterbox to nothing in a 32px square); dropped the outer frame and both text runs, retargeted the viewBox to the glyph's own 136×136 box, and renamed the glow filter id to avoid collisions when inlined. Colours unchanged; the mark carries its own dark plate so it stays legible in both app themes |

## Inline SVG marks (`RUNTIME_MARKS`)

Expand Down
12 changes: 12 additions & 0 deletions desktop/public/harness-logos/pfterminal.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions desktop/src-tauri/src/managed_agents/discovery/presets.rs
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,15 @@ pub(super) const PRESET_HARNESSES: &[PresetHarness] = &[
Gateway's own environment separately.",
underlying_cli: None,
},
PresetHarness {
id: "pfterminal",
label: "PFTerminal",
command: "pfterminal-acp",
args: &[],
install_instructions_url: "https://github.com/agtico/PfTerminal",
install_hint: "Buzz talks to PFTerminal through the pfterminal-acp adapter, which ships with PFTerminal and relies on the codex-acp bridge. Install PFTerminal, then install the bridge with `npm install -g @agentclientprotocol/codex-acp`, so the pfterminal-acp command is on your PATH.",
underlying_cli: Some("pfterminal"),
},
];

/// Return preset definitions for the spawn/readiness registry.
Expand Down
1 change: 1 addition & 0 deletions desktop/src/features/onboarding/ui/RuntimeIcon.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ export const PRESET_LOGOS: Record<string, string> = {
amp: "/harness-logos/amp.png",
hermes: "/harness-logos/hermes.png",
openclaw: "/harness-logos/openclaw.svg",
pfterminal: "/harness-logos/pfterminal.svg",
};

function isBuzzRuntime(runtime: AcpRuntimeCatalogEntry): boolean {
Expand Down
4 changes: 4 additions & 0 deletions desktop/src/features/settings/ui/harnessCatalogCopy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ const HARNESS_DESCRIPTIONS: Record<string, string> = {
// Sources: https://github.com/openclaw/openclaw,
// https://docs.openclaw.ai/start/getting-started
openclaw: "A personal AI assistant that runs on your own devices.",
// Source: https://github.com/agtico/PfTerminal — "an open-source,
// multi-provider coding terminal built on the Codex CLI".
pfterminal:
"An open-source, multi-provider coding terminal built on the Codex CLI.",
};

/**
Expand Down