Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
0bd9ad9
Render plan field as markdown in permission requests
undefinedopcode Jan 10, 2026
54fa675
Add syntax highlighting with theme-aware styling and copy button
undefinedopcode Jan 10, 2026
8729173
Add agent mode support with dropdown selector
undefinedopcode Jan 10, 2026
bcca240
Add slash command and file reference autocompletion
undefinedopcode Jan 10, 2026
92471ed
Add context chunk support and improve diff algorithm
undefinedopcode Jan 11, 2026
32aa46b
Add Kate theme integration and multiple edit support
undefinedopcode Jan 11, 2026
9121558
Add session persistence infrastructure (disabled)
undefinedopcode Jan 12, 2026
1310897
Add quick actions and diff highlight manager
undefinedopcode Jan 12, 2026
3249a0a
Add Kate editor font integration and shades-of-purple theme
undefinedopcode Jan 12, 2026
0051c7e
Fix signal disconnection and update chat UI styles
undefinedopcode Jan 12, 2026
005a7f5
Fix syntax highlighting in edit diffs
undefinedopcode Jan 12, 2026
adc5bfd
Add Task/TaskOutput tool rendering and fix signal cleanup
undefinedopcode Jan 13, 2026
4e26d0a
Add session transcript writer and theme-aware task styling
undefinedopcode Jan 13, 2026
79ab027
chore(README.md): update project description
undefinedopcode Jan 14, 2026
9c1d716
chore(README.md): correct setup steps
undefinedopcode Jan 14, 2026
d751d29
chore(README.md): add screenshot
undefinedopcode Jan 14, 2026
ad1cb49
chore(Screenshot.png): update
undefinedopcode Jan 14, 2026
d949ecb
chore(LICENSE): update
undefinedopcode Jan 14, 2026
7e2f77e
chore(PKGBUILD): add arch package build
undefinedopcode Jan 14, 2026
a0cf391
feat: add prompt cancellation and Material Symbols icons
undefinedopcode Jan 16, 2026
1b27e81
feat: add Debian and RPM packaging support
undefinedopcode Jan 16, 2026
d8fb0b7
feat: update mode dropdown when exiting plan mode
undefinedopcode Jan 16, 2026
3994a7c
chore(README.md): add license mention to text
undefinedopcode Jan 16, 2026
6276c6c
chore(Screenshot.png): update screenshot
undefinedopcode Jan 16, 2026
99ee3eb
chore: cleanup files
undefinedopcode Jan 16, 2026
dc56f46
chore: cleanup files
undefinedopcode Jan 16, 2026
0a209c9
feat: add Arch Linux package build support
undefinedopcode Jan 17, 2026
eaccaca
feat: add session summarization support
undefinedopcode Jan 17, 2026
28ee9c4
feat: add session resumption with summary context
undefinedopcode Jan 18, 2026
2f35c36
feat: add shutdown hooks for summary generation
undefinedopcode Jan 18, 2026
36b87d0
fix: use code-context icon for config page
undefinedopcode Jan 18, 2026
72cd053
fix: improve session dialog layout and sizing
undefinedopcode Jan 18, 2026
699fefb
fix: improve padding for user message lists
undefinedopcode Jan 18, 2026
84359d7
fix: remove left accent border from user messages
undefinedopcode Jan 18, 2026
ca9709b
fix: use theme accent color for user message background
undefinedopcode Jan 18, 2026
db5cef2
fix: remove extraneous left padding from messages
undefinedopcode Jan 18, 2026
e08ce2a
feat: clean and highlight Read tool results
undefinedopcode Jan 18, 2026
81808ab
feat: strip code block markers from Read tool results
undefinedopcode Jan 18, 2026
dbda7c1
fix: skip summary generation when no user messages sent
undefinedopcode Jan 18, 2026
2fc6d38
docs: add session summarization & resume section to README
undefinedopcode Jan 18, 2026
29dae72
feat: add image paste support with thumbnail preview
undefinedopcode Jan 19, 2026
f9be1ee
feat: display attached images in chat messages
undefinedopcode Jan 19, 2026
85cdab4
docs: add image paste support to KDE integration features
undefinedopcode Jan 19, 2026
aa39ba9
feat: add terminal tool support with ANSI color rendering
undefinedopcode Jan 19, 2026
040a1fe
feat: add terminal renderer with cursor positioning support
undefinedopcode Jan 19, 2026
c9a241f
feat: use KPtyProcess for proper terminal emulation
undefinedopcode Jan 19, 2026
a2756db
feat: add Makefile with build, install, package targets
undefinedopcode Jan 20, 2026
84c451c
feat: add dropdown session selection with summary preview
undefinedopcode Jan 20, 2026
6392ad1
feat: autoselect first entry in command/file completion popup
undefinedopcode Jan 20, 2026
5adc441
refactor: simplify terminal output rendering in chat UI
undefinedopcode Jan 20, 2026
d8b673d
fix: handle async KWallet API key loading for summary generation
undefinedopcode Jan 20, 2026
7080e22
feat: add support for Kate MCP tool variants in chat UI
undefinedopcode Jan 21, 2026
891081b
feat: add filesystem support and disable git pager in terminals
undefinedopcode Jan 21, 2026
1dd0ad8
feat: add document provider for Kate buffer integration
undefinedopcode Jan 21, 2026
b340b67
fix: trigger summary generation before resetting state in new session
undefinedopcode Jan 21, 2026
dfdbd6c
feat: use surgical edits for Kate documents to preserve cursor and mi…
undefinedopcode Jan 22, 2026
d071f77
feat: add edit tracking with floating summary panel
undefinedopcode Jan 22, 2026
730d330
feat: reorganize config page and improve color handling
undefinedopcode Jan 23, 2026
257feba
feat: improve terminal output display with exit code parsing
undefinedopcode Jan 23, 2026
954feed
feat: adapt diff highlight colors to light/dark Kate themes
undefinedopcode Jan 23, 2026
7706574
fix: adapt terminal output colors to light/dark themes
undefinedopcode Jan 23, 2026
4f7135b
fix: clear edit tracker when starting new ACP session
undefinedopcode Jan 23, 2026
730f4e3
feat: add line number formatting to fs/read_text_file output
undefinedopcode Jan 25, 2026
aeccc54
Revert "feat: add line number formatting to fs/read_text_file output"
undefinedopcode Jan 25, 2026
82f2518
feat: add dedicated Resume Session button
undefinedopcode Jan 26, 2026
583c7d1
feat: improve session summary prompt with better structure
undefinedopcode Jan 26, 2026
c6f9ea1
wip: changes to support vibe acp
undefinedopcode Jan 27, 2026
3c3a515
fix: improve read/edit tool handling for vibe
undefinedopcode Jan 27, 2026
115283f
fix: improve terminal handling for vibe-acp
undefinedopcode Jan 27, 2026
de536cd
fix: debug ACP to output window
undefinedopcode Jan 28, 2026
7b11a2b
fix: gemini terminal support
undefinedopcode Jan 28, 2026
ce125fb
feat: add built-in MCP server for Kate editor tools
undefinedopcode Jan 28, 2026
2be550a
fix: add Kate MCP tools to read/write/edit helpers
undefinedopcode Jan 28, 2026
6f411bf
docs: add usage preference instructions to Kate MCP tool descriptions
undefinedopcode Jan 28, 2026
f457d1c
feat: update chat interface styles and scripts
undefinedopcode Jan 28, 2026
cbbf673
feat: add katecode_ask_user MCP tool with timeout/cancel support
undefinedopcode Jan 29, 2026
82e7f2b
fix: remove kate_test MCP tool to avoid model confusion
undefinedopcode Jan 30, 2026
d181da2
fix: use suffix matching for katecode tool type detection
undefinedopcode Jan 30, 2026
556b314
fix: reset WebView on session change to reclaim Chromium memory
undefinedopcode Feb 5, 2026
a5a7dc4
feat: improve tool call handling and add Glob/Grep pattern display
undefinedopcode Feb 5, 2026
dd377f0
feat: add offset/limit pagination to katecode_read MCP tool
undefinedopcode Feb 16, 2026
3551c46
fix: update deb package build dependencies and fixes
undefinedopcode Feb 16, 2026
6f2c37e
fix: add kwallet and kpty dependencies to all package builds
undefinedopcode Feb 16, 2026
87b9aaf
fix: update deprecated summary model IDs and surface errors
undefinedopcode Feb 19, 2026
5802acb
fix: make build script posix compliant
undefinedopcode Mar 7, 2026
6b22e17
fix: make build script not to use -v for mounts
undefinedopcode Mar 7, 2026
3cab2e8
fix: path fix for mount
undefinedopcode Mar 7, 2026
fcd9851
fix: silently remove temp volume from build container
undefinedopcode Mar 7, 2026
c75df56
Add MCP server configuration per ACP provider
the-dem May 26, 2026
e3f66c3
Add configurable ACP session options
the-dem Jun 29, 2026
ac94628
Preserve 1.3.1 UI and WebView work as baseline
the-dem Jul 1, 2026
d6e8bb8
Stop the streaming caret from flashing
the-dem Jul 1, 2026
4fe07e2
Add global allowed-commands auto-approval list
the-dem Jul 1, 2026
034ff6d
Fix crash when closing Kate with a live session
the-dem Jul 1, 2026
e12e78e
Make editor DBus name per-process for the MCP server
the-dem Jul 1, 2026
7ae9f46
Gate agents to one active window per Kate process
the-dem Jul 1, 2026
226e81e
Prefer ACP set_config_option for mode changes
the-dem Jul 1, 2026
05eb982
Detect prompt capabilities; orient agent to Kate
the-dem Jul 1, 2026
e1ea030
Queue follow-up prompts instead of doubling the cursor
the-dem Jul 1, 2026
d4468c8
Add resizable input, waiting indicator, file-include
the-dem Jul 1, 2026
72f9304
Add save-output button and command auto-approval
the-dem Jul 1, 2026
8f17412
Bump version to 1.4.0
the-dem Jul 1, 2026
92e7314
Tidy internal task-number comments
the-dem Jul 1, 2026
c784960
Surface Codex systemError and real ACP errors in chat
the-dem Jul 1, 2026
c8377ff
Make agent output reach the end of the chat log
the-dem Jul 1, 2026
59deac6
Bump version to 1.4.1
the-dem Jul 1, 2026
282e602
Summarise sessions with a configured ACP agent
the-dem Jul 2, 2026
78457ea
Frame injected resume context as a restore
the-dem Jul 2, 2026
b318b69
Remove the unused Anthropic API summariser plumbing
the-dem Jul 2, 2026
0831321
Fix bugs found in a multi-agent review sweep
the-dem Jul 2, 2026
8d2734e
Stop kate-mcp-server dying intermittently
the-dem Jul 2, 2026
ab5f85e
Bump version to 1.5.0
the-dem Jul 2, 2026
1c375e7
Fix kate-mcp-server abort on per-process DBus name
the-dem Jul 2, 2026
e8cbc09
Bump version to 1.5.1
the-dem Jul 2, 2026
3053e35
Update provider and installation documentation
the-dem Jul 3, 2026
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
7 changes: 0 additions & 7 deletions .claude/CLAUDE.md

This file was deleted.

15 changes: 15 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Build artifacts
build/
dist/
pkg/
src/build/
src/kate-code/

# Git
.git/

# Packages
*.tar.gz
*.pkg.tar.zst
*.deb
*.rpm
66 changes: 21 additions & 45 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,16 @@ cmake --build build

## Installation

Test install:
```bash
cmake --install build --prefix ~/.local
```

Full install:
- Bump the version (minor if minor etc)
- Make an RPM. Use the spec at /home/ben/rpmbuild/SPECS/kate-code.spec
- Copy the new RPM to the local repo at /volumes/localrepo

Then restart Kate and enable the plugin via:
Settings > Configure Kate > Plugins > Enable "Kate Code"

Expand All @@ -23,6 +29,7 @@ Settings > Configure Kate > Plugins > Enable "Kate Code"
### Layer Structure
- **Plugin**: KateCodePlugin, KateCodeView - Kate integration
- **ACP**: ACPService, ACPSession - JSON-RPC 2.0 over stdin/stdout to claude-code-acp
- **MCP**: MCPServer - Built-in MCP server executable for Kate editor tools
- **UI**: ChatWidget, ChatWebView, ChatInputWidget, PermissionDialog
- **Util**: KDEColorScheme - reads ~/.config/kdeglobals

Expand All @@ -32,51 +39,19 @@ Settings > Configure Kate > Plugins > Enable "Kate Code"
- `src/acp/ACPService.{h,cpp}` - QProcess-based claude-code-acp subprocess management
- `src/acp/ACPSession.{h,cpp}` - Protocol flow and session state management
- `src/acp/ACPModels.h` - Data structures (Message, ToolCall, TodoItem, etc.)
- `src/mcp/MCPServer.{h,cpp}` - MCP protocol handler (initialize, tools/list, tools/call)
- `src/mcp/main.cpp` - MCP server entry point (stdio JSON-RPC loop)
- `src/ui/ChatWidget.{h,cpp}` - Main chat interface with ACP integration
- `src/ui/ChatWebView.{h,cpp}` - QWebEngineView for HTML/CSS/JS rendering
- `src/ui/ChatInputWidget.{h,cpp}` - Multiline text input with send button
- `src/ui/PermissionDialog.{h,cpp}` - Modal dialog for tool approval requests
- `src/config/SettingsStore.{h,cpp}` - QSettings + KWallet storage, ACPProvider management
- `src/config/KateCodeConfigPage.{h,cpp}` - Kate config page with provider table, diff colors, summaries
- `src/util/KDEColorScheme.{h,cpp}` - KDE color extraction from kdeglobals
- `src/web/chat.{html,css,js}` - Web assets for chat interface
- `src/katecode.qrc` - Qt resource file for web assets
- `src/katecode.json` - KPlugin metadata

## Development Progress

### Phase 1: Core Plugin Structure ✓
- [x] CMake build system with KF6/Qt6 dependencies
- [x] Directory structure
- [x] KateCodePlugin with K_PLUGIN_CLASS_WITH_JSON registration
- [x] KateCodeView with side panel tool view (left position)
- [x] Basic ChatWidget placeholder
- [x] Successful compilation

### Phase 2: ACP Integration ✓
- [x] ACPService with QProcess management
- [x] ACPModels data structures
- [x] ACPSession with protocol flow (initialize → session/new → session/prompt)
- [x] ChatWidget integrated with ACP session
- [x] Basic UI for testing (Connect button, chat display, message input)

### Phase 3: Chat Functionality ✓
- [x] ChatWebView with QWebEngineView and HTML/CSS/JS rendering
- [x] ChatInputWidget with multiline input (Enter=send, Shift+Enter=newline)
- [x] Message streaming display with role indicators and timestamps
- [x] Tool call display in chat UI
- [x] Qt resource system for bundling web assets
- [x] JavaScript bridge for updating messages from C++

### Phase 4: Full Features ✓
- [x] KDE color scheme extraction from ~/.config/kdeglobals
- [x] Color injection into WebView via JavaScript
- [x] Permission dialog for tool approvals with option selection
- [x] Error display via QMessageBox
- [x] Permission response handling back to ACP

### Phase 5: Kate Integration (TODO)
- [ ] Context actions
- [ ] File/selection context in prompts

## Lessons Learned

### Build System
Expand All @@ -98,18 +73,19 @@ Settings > Configure Kate > Plugins > Enable "Kate Code"
- `plan` (todos)
- Permission requests via `session/request_permission` with requestId that requires response

### ACP Provider Configuration
- Providers are defined by `ACPProvider` struct: id, description, executable, options, builtin flag
- Two built-in providers (Claude Code, Vibe/Mistral) are hardcoded and cannot be deleted
- Custom providers are stored in QSettings via `beginWriteArray("ACP/customProviders")`
- Active provider selection persisted as `ACP/activeProvider` string id
- Provider selector is a QComboBox in the ChatWidget header (disabled while connected)
- Unavailable executables shown grayed with "(not found)" suffix
- Settings page shows a QTableWidget for managing custom providers (add/edit/remove)
- Old `ACPBackend` enum settings are auto-migrated on first launch

### Web Interface
- QWebEngineView loads HTML from Qt resources (qrc:/katecode/web/chat.html)
- JavaScript functions exposed: `addMessage()`, `updateMessage()`, `finishMessage()`, `addToolCall()`, `updateToolCall()`
- C++ calls JavaScript via `page()->runJavaScript()` with proper string escaping
- CSS uses CSS variables for theming (ready for KDE color injection in Phase 4)
- Responsive layout with message bubbles, tool call display, and streaming indicator


<claude-mem-context>
# Recent Activity

<!-- This section is auto-generated by claude-mem. Edit content outside the tags. -->

*No recent activity*
</claude-mem-context>
4 changes: 3 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.16)
project(katecode VERSION 1.0.0)
project(katecode VERSION 1.5.1)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
Expand All @@ -18,6 +18,8 @@ find_package(KF6 ${REQUIRED_KF_VERSION} REQUIRED COMPONENTS
TextEditor
CoreAddons
XmlGui
SyntaxHighlighting
Pty
)

find_package(Qt6 REQUIRED COMPONENTS
Expand Down
62 changes: 62 additions & 0 deletions Dockerfile.arch
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Dockerfile for building kate-code .pkg.tar.zst package (Arch Linux)
# Usage:
# docker build -f Dockerfile.arch -t kate-code-arch .
# docker run --rm -v $(pwd)/dist:/dist kate-code-arch

FROM archlinux:base-devel

# Update and install build dependencies
RUN pacman -Syu --noconfirm && \
pacman -S --noconfirm --needed \
cmake \
extra-cmake-modules \
ktexteditor \
ki18n \
kcoreaddons \
kxmlgui \
syntax-highlighting \
kwallet \
kpty \
qt6-webengine \
git \
&& pacman -Scc --noconfirm

# Create build user (makepkg cannot run as root)
RUN useradd -m builder && \
echo "builder ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers && \
mkdir -p /home/builder/build && \
chown builder:builder /home/builder/build

WORKDIR /home/builder/build

# Copy source
COPY --chown=builder:builder . /home/builder/build/

# Create tarball and modify PKGBUILD for local source
RUN tar czf /tmp/kate-code-1.0.0.tar.gz \
--transform 's,^\.,kate-code-1.0.0,' \
--exclude='.git' \
--exclude='build' \
--exclude='dist' \
--exclude='pkg' \
--exclude='src/build' \
--exclude='src/kate-code' \
--exclude='*.tar.gz' \
--exclude='*.pkg.tar.zst' \
. && \
mv /tmp/kate-code-1.0.0.tar.gz . && \
sed -i 's|source=.*|source=("kate-code-1.0.0.tar.gz")|' PKGBUILD && \
sed -i 's|sha256sums=.*|sha256sums=("SKIP")|' PKGBUILD && \
sed -i 's|-S "$pkgname"|-S "$srcdir/kate-code-1.0.0"|' PKGBUILD

# Switch to builder user
USER builder

# Build the package using makepkg
RUN makepkg -sf --noconfirm --skipchecksums

# Copy package to dist
USER root
RUN mkdir -p /dist && cp /home/builder/build/*.pkg.tar.zst /dist/

CMD ["cp", "-r", "/dist/.", "/output/"]
36 changes: 36 additions & 0 deletions Dockerfile.deb
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Dockerfile for building kate-code .deb package
# Usage:
# docker build -f Dockerfile.deb -t kate-code-deb .
# docker run --rm -v $(pwd)/dist:/dist kate-code-deb

FROM debian:trixie

# Install build dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
cmake \
extra-cmake-modules \
libkf6texteditor-dev \
libkf6i18n-dev \
libkf6coreaddons-dev \
libkf6xmlgui-dev \
libkf6syntaxhighlighting-dev \
libkf6wallet-dev \
libkf6pty-dev \
qt6-webengine-dev \
devscripts \
debhelper \
&& rm -rf /var/lib/apt/lists/*

WORKDIR /build

# Copy source
COPY . /build/

# Build the package
RUN dpkg-buildpackage -us -uc -b

# Move .deb to output directory
RUN mkdir -p /dist && mv /kate-code_*.deb /dist/ 2>/dev/null || mv ../*.deb /dist/

CMD ["cp", "-r", "/dist/.", "/output/"]
48 changes: 48 additions & 0 deletions Dockerfile.rpm
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Dockerfile for building kate-code .rpm package
# Usage:
# docker build -f Dockerfile.rpm -t kate-code-rpm .
# docker run --rm -v $(pwd)/dist:/dist kate-code-rpm

FROM fedora:41

# Install build dependencies
RUN dnf install -y \
rpm-build \
cmake \
extra-cmake-modules \
gcc-c++ \
kf6-ktexteditor-devel \
kf6-ki18n-devel \
kf6-kcoreaddons-devel \
kf6-kxmlgui-devel \
kf6-syntax-highlighting-devel \
kf6-kwallet-devel \
kf6-kpty-devel \
qt6-qtwebengine-devel \
&& dnf clean all

WORKDIR /build

# Copy source
COPY . /build/

# Create tarball for rpmbuild
RUN mkdir -p /root/rpmbuild/{SOURCES,SPECS} && \
tar czf /root/rpmbuild/SOURCES/kate-code-1.0.0.tar.gz \
--transform 's,^,kate-code-1.0.0/,' \
--exclude='.git' \
--exclude='build' \
--exclude='dist' \
--exclude='*.tar.gz' \
--exclude='*.pkg.tar.zst' \
. && \
cp kate-code.spec /root/rpmbuild/SPECS/

# Build the package
RUN rpmbuild -ba /root/rpmbuild/SPECS/kate-code.spec

# Copy RPM to dist
RUN mkdir -p /dist && \
cp /root/rpmbuild/RPMS/*/*.rpm /dist/

CMD ["cp", "-r", "/dist/.", "/output/"]
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2025 Kate Code Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
19 changes: 19 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Kate Code Plugin Makefile

BUILD_DIR := build
BUILD_TYPE ?= Release

.PHONY: build install package clean

build:
cmake -B $(BUILD_DIR) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE)
cmake --build $(BUILD_DIR)

install: build
cmake --install $(BUILD_DIR)

package:
./build-packages.sh

clean:
rm -rf $(BUILD_DIR)
39 changes: 39 additions & 0 deletions PKGBUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Maintainer: Your Name <your.email@example.com>
pkgname=kate-code
pkgver=1.0.0
pkgrel=1
pkgdesc="Claude Code integration for Kate text editor"
arch=('x86_64')
url="https://github.com/undefinedopcode/kate-code"
license=('MIT')
depends=(
'ktexteditor'
'ki18n'
'kcoreaddons'
'kxmlgui'
'syntax-highlighting'
'kwallet'
'kpty'
'qt6-webengine'
)
makedepends=(
'cmake'
'extra-cmake-modules'
'gcc'
)
optdepends=(
'claude-code-acp: Required for Claude Code functionality'
)
source=("${pkgname}::git+https://github.com/undefinedopcode/kate-code.git")
sha256sums=('SKIP')

build() {
cmake -B build -S "$pkgname" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
}

package() {
DESTDIR="$pkgdir" cmake --install build
}
Loading