52 lines
2.0 KiB
Markdown
52 lines
2.0 KiB
Markdown
# Kompanion ⇄ Konsole Bridge
|
||
|
||
This directory contains the first draft of **Kompanion‑Konsole**, a plugin for KDE's
|
||
Konsole terminal emulator. The plugin gives Kompanion agents a controlled way to
|
||
step into a Konsole tab, using the same Kompanion core that powers the MCP back end.
|
||
|
||
## Layout
|
||
|
||
```
|
||
KompanionKonsolePlugin/ # Drop-in plugin sources (mirrors Konsole/src/plugins layout)
|
||
```
|
||
|
||
The code is intentionally structured so it can live directly inside the Konsole
|
||
source tree (e.g. under `konsole/src/plugins`). You can keep developing it here
|
||
and then symlink/copy it into a Konsole checkout when you are ready to compile.
|
||
|
||
## Quick start (demo)
|
||
|
||
1. Ensure you have a Konsole checkout (see `/mnt/bulk/shared/kdesrc/konsole`).
|
||
2. From the Konsole repo, link the plugin:
|
||
|
||
```bash
|
||
ln -s /home/kompanion/dev/metal/src/metal-kompanion/integrations/konsole/KompanionKonsolePlugin \
|
||
src/plugins/KompanionKonsole
|
||
echo "add_subdirectory(KompanionKonsole)" >> src/plugins/CMakeLists.txt
|
||
```
|
||
|
||
3. Reconfigure Konsole with CMake; build the `konsole_kompanionplugin` target.
|
||
|
||
```bash
|
||
cmake -S . -B build
|
||
cmake --build build --target konsole_kompanionplugin
|
||
```
|
||
|
||
4. Launch the newly built Konsole. Open *Plugins → Kompanion Konsole Bridge* to
|
||
toggle the dock and use the **Launch Demo Agent Shell** or **Attach Active Tab**
|
||
buttons to hand the tab over to Kompanion.
|
||
|
||
The demo simply injects `kom_mcp --list` into the tab and prints a coloured banner.
|
||
Later iterations will replace this with the minimal TTY protocol described in the
|
||
roadmap.
|
||
|
||
## Notes
|
||
|
||
- The plugin depends on the in-tree `konsoleprivate` and `konsoleapp` targets, so it
|
||
currently builds only alongside the Konsole sources.
|
||
- Strings are translated via `KLocalizedString`, and actions are registered with the
|
||
Konsole action collection so shortcuts can be customised.
|
||
- All agent‑facing commands are placeholder stubs; they go through Kompanion's CLI
|
||
entry points so real migrations can swap in more capable bridges without touching
|
||
the KDE plugin scaffolding.
|