Skip to content

Commit 352c590

Browse files
committed
Merge branch 'main' into feat/new-fonts
2 parents 83e5420 + 0755408 commit 352c590

74 files changed

Lines changed: 21567 additions & 121 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/deploy-docs.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
name: Deploy docs site to GitHub Pages
22

33
on:
4+
push:
5+
paths:
6+
- 'docs-site/**'
7+
pull_request:
8+
paths:
9+
- 'docs-site/**'
410
workflow_dispatch:
511

612
permissions:
@@ -46,6 +52,7 @@ jobs:
4652
url: ${{ steps.deployment.outputs.page_url }}
4753
runs-on: ubuntu-latest
4854
needs: build
55+
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
4956
steps:
5057
- name: Deploy to GitHub Pages
5158
id: deployment

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,3 @@ start-docker.sh
3333
.claude-trace
3434
repomix-output.txt
3535

36-
docs-site

README.md

Lines changed: 56 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@
66

77
**Elevate your development workflow with AiderDesk**, a sophisticated desktop application bringing all the power of [aider](https://aider.chat) into a user-friendly graphical interface. Whether you're managing multiple projects, integrating with your favorite IDE, or tracking costs, AiderDesk elevates your productivity to new heights.
88

9+
[📖 Documentation](https://aiderdesk.hotovo.com/docs)
10+
911
## 🎬 Overview
1012

1113
See AiderDesk in action:
1214

1315
<div align="center">
14-
<a href="https://www.youtube.com/watch?v=9oyIdntCh7g">
16+
<a href="https://www.youtube.com/watch?v=g4qg7xTjxcM">
1517
<img src="https://img.youtube.com/vi/9oyIdntCh7g/0.jpg" alt="AiderDesk Overview Video" width=400>
1618
</a>
1719
</div>
@@ -20,28 +22,29 @@ See AiderDesk in action:
2022

2123
AiderDesk is packed with features designed for modern software development:
2224

23-
* **🖥️ Intuitive GUI**: A clean, visual interface replacing command-line interactions.
24-
* **📂 Multi-Project Management**: Seamlessly organize, switch between, and manage multiple codebases.
25-
* **🔌 Effortless IDE Integration**: Automatically sync context files with your active editor in:
26-
* IntelliJ IDEA ([Plugin](https://plugins.jetbrains.com/plugin/26313-aiderdesk-connector) | [GitHub](https://github.com/hotovo/aider-desk-connector-intellij-plugin))
27-
* VSCode ([Extension](https://marketplace.visualstudio.com/items?itemName=hotovo-sk.aider-desk-connector) | [GitHub](https://github.com/hotovo/aider-desk-connector-vscode-extension))
28-
* **🤖 Powerful Agent Mode**: Utilize an autonomous AI agent (powered by Vercel AI SDK) capable of complex task planning and execution using various tools.
29-
* **🧩 Extensible via MCP**: Connect to Model Context Protocol (MCP) servers to grant the Agent access to external tools like web search, documentation lookups, and more.
30-
* **✍️ Custom Commands**: Define and execute your own commands to automate tasks and extend AiderDesk's capabilities. [Learn more](docs/custom-commands.md)
31-
* **📄 Smart Context Management**: Automatically manage context via IDE plugins or manually control context using the integrated project file browser.
32-
* **💾 Robust Session Management**: Save and load entire work sessions (chat history, context files) to easily switch between tasks or resume later.
33-
* **🔄 Flexible Model Switching**: Change AI models on the fly while retaining your conversation and context.
34-
* **💬 Multiple Chat Modes**: Tailor the AI interaction for different needs (e.g., coding, asking questions).
35-
* **🔍 Integrated Diff Viewer**: Review AI-generated code changes with a clear side-by-side comparison.
36-
* **⏪ One-Click Reverts**: Easily undo specific AI modifications while keeping others.
37-
* **💰 Cost Tracking**: Monitor token usage and associated costs per project session for both Aider and the Agent.
38-
* **📊 Usage Dashboard**: Visualize token usage, costs, and model distribution with interactive charts and tables.
39-
* **⚙️ Centralized Settings**: Manage API keys, environment variables, and configurations conveniently.
40-
* **🌐 Versatile REST API**: Integrate AiderDesk with external tools and workflows.
41-
* **📨 Structured Communication**: View prompts, AI responses, agent thoughts, and tool outputs in an organized format.
42-
* **📋 Easy Sharing**: Copy code snippets or entire conversations effortlessly.
25+
* **🖥️ Intuitive GUI**: A clean, visual interface replacing command-line interactions.
26+
* **📂 Multi-Project Management**: Seamlessly organize, switch between, and manage multiple codebases.
27+
* **🔌 Effortless IDE Integration**: Automatically sync context files with your active editor in:
28+
* IntelliJ IDEA ([Plugin](https://plugins.jetbrains.com/plugin/26313-aiderdesk-connector) | [GitHub](https://github.com/hotovo/aider-desk-connector-intellij-plugin))
29+
* VSCode ([Extension](https://marketplace.visualstudio.com/items?itemName=hotovo-sk.aider-desk-connector) | [GitHub](https://github.com/hotovo/aider-desk-connector-vscode-extension))
30+
* **🤖 Powerful Agent Mode**: Utilize an autonomous AI agent (powered by Vercel AI SDK) capable of complex task planning and execution using various tools.
31+
* **🧩 Extensible via MCP**: Connect to Model Context Protocol (MCP) servers to grant the Agent access to external tools like web search, documentation lookups, and more.
32+
* **✍️ Custom Commands**: Define and execute your own commands to automate tasks and extend AiderDesk's capabilities. [Learn more](https://aiderdesk.hotovo.com/docs/core-features/custom-commands)
33+
* **📄 Smart Context Management**: Automatically manage context via IDE plugins or manually control context using the integrated project file browser.
34+
* **💾 Robust Session Management**: Save and load entire work sessions (chat history, context files) to easily switch between tasks or resume later.
35+
* **🔄 Flexible Model Switching**: Change AI models on the fly while retaining your conversation and context.
36+
* **💬 Multiple Chat Modes**: Tailor the AI interaction for different needs (e.g., coding, asking questions).
37+
* **🔍 Integrated Diff Viewer**: Review AI-generated code changes with a clear side-by-side comparison.
38+
* **⏪ One-Click Reverts**: Easily undo specific AI modifications while keeping others.
39+
* **💰 Cost Tracking**: Monitor token usage and associated costs per project session for both Aider and the Agent.
40+
* **📊 Usage Dashboard**: Visualize token usage, costs, and model distribution with interactive charts and tables.
41+
* **⚙️ Centralized Settings**: Manage API keys, environment variables, and configurations conveniently.
42+
* **🌐 Versatile REST API**: Integrate AiderDesk with external tools and workflows.
43+
* **📨 Structured Communication**: View prompts, AI responses, agent thoughts, and tool outputs in an organized format.
44+
* **📋 Easy Sharing**: Copy code snippets or entire conversations effortlessly.
4345

4446
---
47+
4548
### 📄 Comprehensive Context File Management
4649

4750
Keep the AI focused on the relevant code with flexible context management options.
@@ -52,10 +55,11 @@ Keep the AI focused on the relevant code with flexible context management option
5255
</a>
5356
</div>
5457

55-
1. **Automatic IDE Sync**: Use the IntelliJ IDEA or VSCode plugins to automatically add/remove the currently active file(s) in your editor to/from the AiderDesk context.
56-
2. **Manual Control**: Utilize the "Context Files" sidebar in AiderDesk, which displays your project's file tree. Click files to manually add or remove them from the context, giving you precise control.
58+
1. **Automatic IDE Sync**: Use the IntelliJ IDEA or VSCode plugins to automatically add/remove the currently active file(s) in your editor to/from the AiderDesk context.
59+
2. **Manual Control**: Utilize the "Context Files" sidebar in AiderDesk, which displays your project's file tree. Click files to manually add or remove them from the context, giving you precise control.
5760

5861
---
62+
5963
### 💾 Session Management
6064

6165
Never lose your work. Save and load complete sessions, including chat history and context files, per project.
@@ -71,6 +75,7 @@ Never lose your work. Save and load complete sessions, including chat history an
7175
- **Manage Multiple Tasks**: Easily switch between different features, bug fixes, or experiments within the same project.
7276

7377
---
78+
7479
### 🤖 Agent Mode & MCP Support
7580

7681
Unlock advanced AI capabilities with AiderDesk's Agent mode. Built on the Vercel AI SDK, the agent can autonomously plan and execute complex tasks by leveraging a customizable set of tools.
@@ -82,6 +87,7 @@ Unlock advanced AI capabilities with AiderDesk's Agent mode. Built on the Vercel
8287
</div>
8388

8489
#### Agent Capabilities:
90+
8591
- **Tool-Driven**: Functionality is defined by connected tools (MCP servers + built-in Aider interaction).
8692
- **Autonomous Planning**: Breaks down complex requests into executable steps using available tools.
8793
- **Seamless Aider Integration**: Uses Aider for core coding tasks like generation and modification.
@@ -90,7 +96,7 @@ Unlock advanced AI capabilities with AiderDesk's Agent mode. Built on the Vercel
9096

9197
#### 🛠️ Extending Capabilities with MCP
9298

93-
Connect AiderDesk to [Model Context Protocol](https://github.com/model-context-protocol/mcp) (MCP) servers to significantly enhance the Agent's abilities. MCP allows AI models to interact with external tools (web browsers, documentation systems, custom utilities).
99+
Connect AiderDesk to [Model Context Protocol](https://modelcontextprotocol.io/docs/getting-started/intro) (MCP) servers to significantly enhance the Agent's abilities. MCP allows AI models to interact with external tools (web browsers, documentation systems, custom utilities).
94100

95101
- **Access External Tools**: Grant the agent capabilities beyond built-in functions.
96102
- **Gather Richer Context**: Enable the agent to fetch external information before instructing Aider.
@@ -99,6 +105,7 @@ Connect AiderDesk to [Model Context Protocol](https://github.com/model-context-p
99105
AiderDesk is compatible with any MCP server, allowing you to tailor the agent's toolset precisely to your needs.
100106

101107
---
108+
102109
### 🌐 REST API
103110

104111
AiderDesk provides a REST API for external tools to interact with the application. The API is running on the same port as the main application (default 24337, configurable by `AIDER_DESK_PORT` environment variable).
@@ -126,7 +133,9 @@ AiderDesk provides a REST API for external tools to interact with the applicatio
126133
}
127134
]
128135
```
136+
129137
Returns the list of context files in the project.
138+
130139
</details>
131140

132141
#### Drop Context File
@@ -146,7 +155,9 @@ AiderDesk provides a REST API for external tools to interact with the applicatio
146155
```json
147156
[]
148157
```
158+
149159
Returns the list of context files in the project.
160+
150161
</details>
151162

152163
#### Get Context Files
@@ -170,7 +181,9 @@ AiderDesk provides a REST API for external tools to interact with the applicatio
170181
}
171182
]
172183
```
184+
173185
Returns the list of context files in the project.
186+
174187
</details>
175188

176189
#### Get Addable Files
@@ -194,7 +207,9 @@ AiderDesk provides a REST API for external tools to interact with the applicatio
194207
}
195208
]
196209
```
210+
197211
Returns the list of files that can be added to the project.
212+
198213
</details>
199214

200215
#### Run Prompt
@@ -234,9 +249,11 @@ AiderDesk provides a REST API for external tools to interact with the applicatio
234249
}
235250
]
236251
```
252+
237253
</details>
238254

239255
---
256+
240257
### 🔌 AiderDesk as an MCP Server
241258

242259
AiderDesk includes a built-in MCP server, allowing other MCP-compatible clients (like Claude Desktop, Cursor, etc.) to interact with AiderDesk's core functionalities.
@@ -263,6 +280,7 @@ Add the following configuration to your MCP client settings, adjusting paths as
263280
```
264281

265282
**Note:** Replace `path-to-appdata` with the absolute path to your AppData directory. You can find this value by running `echo %APPDATA%` in your command prompt.
283+
266284
</details>
267285

268286
<details>
@@ -283,6 +301,7 @@ Add the following configuration to your MCP client settings, adjusting paths as
283301
```
284302

285303
**Note:** Replace `/path/to/home` with the absolute path to your home directory. You can find this value by running `echo $HOME` in your terminal.
304+
286305
</details>
287306

288307
<details>
@@ -303,15 +322,18 @@ Add the following configuration to your MCP client settings, adjusting paths as
303322
```
304323

305324
**Note:** Replace `/path/to/home` with the absolute path to your home directory. You can find this value by running `echo $HOME` in your terminal.
325+
306326
</details>
307327

308328
**Arguments & Environment:**
329+
309330
- **Command Argument 1:** Project directory path (required).
310331
- **`AIDER_DESK_API_BASE_URL`:** Base URL of the running AiderDesk API (default: `http://localhost:24337/api`).
311332

312333
#### Available Tools via MCP
313334

314335
The built-in server exposes these tools to MCP clients:
336+
315337
- `add_context_file`: Add a file to AiderDesk's context.
316338
- `drop_context_file`: Remove a file from AiderDesk's context.
317339
- `get_context_files`: List files currently in AiderDesk's context.
@@ -325,36 +347,44 @@ The built-in server exposes these tools to MCP clients:
325347
## 📥 Installation
326348

327349
### Quick Start
350+
328351
1. Download the latest release for your OS from [Releases](https://github.com/hotovo/aider-desk/releases).
329352
2. Run the executable.
330353

331354
### Troubleshooting
332355

333356
#### Disabling Auto Updates
357+
334358
To prevent automatic updates, set the `AIDER_DESK_NO_AUTO_UPDATE` environment variable:
359+
335360
- **macOS/Linux:** `export AIDER_DESK_NO_AUTO_UPDATE=true`
336361
- **Windows:** `$env:AIDER_DESK_NO_AUTO_UPDATE = "true"`
337362

338363
### Custom Aider Version
364+
339365
By default, AiderDesk installs the latest version of the `aider-chat` Python package. If you need to use a specific version of Aider, you can set the `AIDER_DESK_AIDER_VERSION` environment variable.
340366

341367
For example, to use Aider version 0.83.1:
368+
342369
```bash
343370
# macOS/Linux
344371
export AIDER_DESK_AIDER_VERSION=0.83.1
345372

346373
# Windows (PowerShell)
347374
$env:AIDER_DESK_AIDER_VERSION = "0.83.1"
348375
```
376+
349377
You can also specify a git URL for installing a development version of Aider:
378+
350379
```bash
351380
# macOS/Linux
352381
export AIDER_DESK_AIDER_VERSION=git+https://github.com/user/aider.git@branch-name
353382
```
354383

355-
This variable will be used during the initial setup and when AiderDesk checks for updates. For more detailed information, please refer to [docs/custom-aider-version.md](https://github.com/hotovo/aider-desk/blob/main/docs/custom-aider-version.md).
384+
This variable will be used during the initial setup and when AiderDesk checks for updates. For more detailed information, please refer to [our docs](https://aiderdesk.hotovo.com/docs/customization/custom-aider-version).
356385

357386
## 👨‍💻 Development Setup
387+
358388
If you want to run from source, you can follow these steps:
359389

360390
```bash
@@ -393,6 +423,7 @@ We welcome contributions from the community! Here's how you can help improve aid
393423
5. **Create a Pull Request** against the main branch of the original repository
394424

395425
Please follow these guidelines:
426+
396427
- Keep PRs focused on a single feature or bugfix
397428
- Update documentation when adding new features
398429
- Follow the existing code style and conventions

docs-site/.gitignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Dependencies
2+
node_modules
3+
4+
# Production
5+
build
6+
7+
# Generated files
8+
.docusaurus
9+
.cache-loader
10+
11+
# Misc
12+
.DS_Store
13+
.env.local
14+
.env.development.local
15+
.env.test.local
16+
.env.production.local
17+
18+
npm-debug.log*
19+
yarn-debug.log*
20+
yarn-error.log*

docs-site/README.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Website
2+
3+
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
4+
5+
## Installation
6+
7+
```bash
8+
yarn
9+
```
10+
11+
## Local Development
12+
13+
```bash
14+
yarn start
15+
```
16+
17+
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
18+
19+
## Build
20+
21+
```bash
22+
yarn build
23+
```
24+
25+
This command generates static content into the `build` directory and can be served using any static contents hosting service.
26+
27+
## Deployment
28+
29+
Using SSH:
30+
31+
```bash
32+
USE_SSH=true yarn deploy
33+
```
34+
35+
Not using SSH:
36+
37+
```bash
38+
GIT_USER=<Your GitHub username> yarn deploy
39+
```
40+
41+
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.

docs/compact.md renamed to docs-site/docs/advanced-features/compact.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
---
2+
sidebar_position: 5
3+
title: "Compact Command"
4+
sidebar_label: "Compact"
5+
---
6+
17
# `/compact` Command
28

39
The `/compact` command helps you summarize your conversation history with AiderDesk. This is particularly useful for long conversations, as it condenses the previous interactions into a concise summary, allowing the AI agent to maintain context more efficiently without being overwhelmed by excessive history.

docs/ide-integration.md renamed to docs-site/docs/advanced-features/ide-integration.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
---
2+
sidebar_position: 3
3+
title: "IDE Integration"
4+
sidebar_label: "IDE Integration"
5+
---
6+
17
# IDE Integration
28

39
AiderDesk is designed to work seamlessly with your favorite Integrated Development Environment (IDE). Through dedicated plugins and extensions, you can automatically sync the files you are working on with AiderDesk's context, creating a fluid and efficient workflow.
@@ -16,4 +22,4 @@ The VSCode extension automatically adds the currently active file in your editor
1622
- **Plugin**: [AiderDesk Connector on JetBrains Marketplace](https://plugins.jetbrains.com/plugin/26313-aiderdesk-connector)
1723
- **Source Code**: [GitHub Repository](https://github.com/hotovo/aider-desk-connector-intellij-plugin)
1824

19-
The IntelliJ plugin provides similar functionality, syncing the active editor file with AiderDesk's context. It is compatible with a wide range of JetBrains IDEs, including WebStorm, PyCharm, and GoLand.
25+
The IntelliJ plugin provides similar functionality, syncing the active editor file with AiderDesk's context. It is compatible with a wide range of JetBrains IDEs, including WebStorm, PyCharm, and GoLand.

docs/rest-api.md renamed to docs-site/docs/advanced-features/rest-api.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
---
2+
sidebar_position: 4
3+
title: "REST API"
4+
sidebar_label: "REST API"
5+
---
6+
17
# REST API
28

39
AiderDesk exposes a REST API that allows external tools, such as IDE plugins, to interact with the application programmatically. The API runs on the same port as the main application, which defaults to `24337` but can be configured with the `AIDER_DESK_PORT` environment variable.

docs/usage-tracking.md renamed to docs-site/docs/advanced-features/usage-tracking.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
---
2+
sidebar_position: 1
3+
title: "Usage and Cost Tracking"
4+
sidebar_label: "Usage Tracking"
5+
---
6+
17
# Usage and Cost Tracking
28

39
AiderDesk provides detailed tools to help you monitor your token usage and associated costs, ensuring you stay in control of your spending.
@@ -28,4 +34,4 @@ For a more in-depth analysis, AiderDesk includes a comprehensive Usage Dashboard
2834
- **Token Usage Trend**: A line chart showing input, output, and total token usage over time.
2935
- **Model Usage Distribution**: A pie chart showing the percentage of tokens used by each model.
3036
- **Daily Cost Breakdown**: A stacked bar chart showing daily costs, broken down by project.
31-
- **Daily Message Breakdown**: A stacked bar chart showing the number of messages per day, broken down by project.
37+
- **Daily Message Breakdown**: A stacked bar chart showing the number of messages per day, broken down by project.

0 commit comments

Comments
 (0)