Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
9321743
added a workflow as mcp
Dec 17, 2025
a15ac73
fixed the issue of UI rendering for deleted mcp servers
Dec 17, 2025
57f3697
fixing lint issues
Dec 17, 2025
85af046
using mcn components
Dec 17, 2025
2259bfc
fixing merge conflicts
Dec 18, 2025
1f22d7a
fix
Dec 18, 2025
cfbe4a4
fix lint errors
Dec 18, 2025
f2450d3
refactored code to use hasstartblock from the tirgger utils
Dec 18, 2025
896e967
removing unecessary auth
Dec 18, 2025
6c10f31
using official mcp sdk and added description fields
Dec 18, 2025
fe4f895
using normalised input schema function
Dec 18, 2025
9743a2f
Merge branch 'staging' into feat/workflow-as-mcp
Dec 18, 2025
4bb9a8d
ui fixes part 1
Sg312 Dec 19, 2025
b94c716
remove migration before merge
icecrasher321 Dec 20, 2025
e48aab1
Merge branch 'staging' into feat/workflow-as-mcp
icecrasher321 Dec 20, 2025
6771195
fix merge conflicts
icecrasher321 Dec 20, 2025
8b4f2a0
remove migration to prep merge
icecrasher321 Dec 21, 2025
a40243f
Merge branch 'staging' into feat/workflow-as-mcp
icecrasher321 Dec 21, 2025
e90fdb4
re-add migration
icecrasher321 Dec 21, 2025
cfdbcee
cleanup code to use mcp sdk types
icecrasher321 Dec 21, 2025
6856b26
fix discovery calls
icecrasher321 Dec 21, 2025
46f6383
Merge branch 'staging' into feat/workflow-as-mcp
icecrasher321 Dec 21, 2025
8489dd5
add migration
icecrasher321 Dec 21, 2025
da144ab
ui improvements
icecrasher321 Dec 21, 2025
b2153cd
fix lint
icecrasher321 Dec 21, 2025
ab44c11
fix types
icecrasher321 Dec 21, 2025
6dac845
fix lint
icecrasher321 Dec 21, 2025
24d58ea
fix spacing
icecrasher321 Dec 21, 2025
feacd08
remove migration to prep merge
icecrasher321 Dec 26, 2025
90e0b93
Merge branch 'staging' into feat/workflow-as-mcp
icecrasher321 Dec 26, 2025
fe3ed9f
add migration back
icecrasher321 Dec 26, 2025
c50b067
Merge branch 'staging' into feat/workflow-as-mcp
icecrasher321 Dec 26, 2025
fc77143
fix imports
icecrasher321 Dec 26, 2025
1998efa
Merge staging into feat/workflow-as-mcp
icecrasher321 Dec 27, 2025
2e1ccb1
improvement(ui): hide divider when following subblock value is null (…
waleedlatif1 Dec 27, 2025
fdba1cf
improvement: required permissions, oauth modal badge (#2609)
emir-karabeg Dec 27, 2025
aa9cc56
improvement(usage-indicator): update query invalidation for usage to …
waleedlatif1 Dec 27, 2025
cdc1a83
fix(docker): add logger package to realtime dockerfile (#2610)
waleedlatif1 Dec 28, 2025
7c0a3c1
improvement(build): migrate to blacksmith sticky disks for faster bui…
waleedlatif1 Dec 28, 2025
71130c8
improvement(monorepo): added tsconfig package, resolved type errors i…
waleedlatif1 Dec 28, 2025
7761b16
feat(tools): added greptile tools/block, updated copilot panel stylin…
waleedlatif1 Dec 28, 2025
f44fc18
fix(build): add tsconfig to db dockerfile (#2617)
waleedlatif1 Dec 28, 2025
132aae1
feat(i18n): update translations (#2619)
waleedlatif1 Dec 28, 2025
1c626df
improvement(globals): light colors (#2620)
emir-karabeg Dec 28, 2025
8806508
fix(deploy): fix workflow change detection to handle old variable ref…
waleedlatif1 Dec 29, 2025
da1f668
improvement(sidebar): fix workspace name truncation on sidebar previe…
waleedlatif1 Dec 29, 2025
400178a
fix(templates): only change updatedAt for actual updates to workflow …
icecrasher321 Dec 29, 2025
1c97aab
Merge staging into feat/workflow-as-mcp
icecrasher321 Dec 29, 2025
404b46f
fix tool refresh ux
icecrasher321 Dec 29, 2025
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
19 changes: 10 additions & 9 deletions .github/workflows/test-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,17 @@ jobs:
with:
node-version: latest

- name: Cache Bun dependencies
uses: actions/cache@v4
- name: Mount Bun cache (Sticky Disk)
uses: useblacksmith/stickydisk@v1
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
key: ${{ github.repository }}-bun-cache
path: ~/.bun/install/cache

- name: Mount node_modules (Sticky Disk)
uses: useblacksmith/stickydisk@v1
with:
key: ${{ github.repository }}-node-modules
path: ./node_modules

- name: Install dependencies
run: bun install --frozen-lockfile
Expand Down
13 changes: 13 additions & 0 deletions apps/docs/components/icons.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4344,3 +4344,16 @@ export function CirclebackIcon(props: SVGProps<SVGSVGElement>) {
</svg>
)
}

export function GreptileIcon(props: SVGProps<SVGSVGElement>) {
return (
<svg {...props} viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'>
<path
clipRule='evenodd'
fillRule='evenodd'
fill='#44A775'
d='M3.353.004a6.074 6.074 0 01-.265.045C2.63.12 2.092.348 1.71.633 1.426.846.717 1.575.557 1.819a3.359 3.359 0 00-.23 3.296c.154.322.35.59.71.972.187.198.434.486.55.64a6.629 6.629 0 011.305 3.546c.01.138.035 1.607.057 3.264.043 3.273.038 3.18.203 3.485.266.494.94.79 1.474.648.29-.077.463-.204 1.353-.986.957-.84 1.092-.932 1.446-.98.124-.017.631 0 1.66.053 1.513.08 1.622.079 1.85-.016.393-.164.539-.4.661-1.074.247-1.36 1.296-2.56 2.64-3.022.116-.04.373-.104.572-.144.198-.04.426-.102.506-.138.296-.136.515-.424.566-.744.017-.11-.007-.549-.089-1.602-.091-1.179-.107-1.483-.083-1.621.057-.342.139-.46 1.01-1.448.447-.506.85-.976.895-1.043.262-.39.288-.91.068-1.345a1.44 1.44 0 00-.822-.67c-.1-.029-.834-.037-3.544-.038H9.897l-.335-.063c-.958-.179-1.765-.49-2.484-.958-.362-.236-.583-.41-1.018-.804-.408-.37-.59-.502-.921-.67A3.018 3.018 0 003.744.005a3.942 3.942 0 00-.391 0zm15.728 5.858c-.132.049-.217.127-.48.44-.592.707-.74 1.336-.531 2.256.106.466.163.572.361.673.105.054.169.055 2.637.046l2.53-.009.118-.063a.551.551 0 00.095-.895 184.88 184.88 0 00-2.223-1.254c-2.293-1.282-2.281-1.276-2.507-1.194zm-3.216 6.71a9.258 9.258 0 00-1.364.696c-.844.557-1.454 1.36-1.923 2.53-.211.525-.202.75.04.935.111.087 6.478 3.14 6.667 3.198.153.047.27.027.43-.074a.538.538 0 00.24-.434c0-.06-.03-.18-.065-.264-.156-.368-3.098-6.467-3.158-6.545-.168-.222-.394-.232-.867-.042zm-8.48 5.457c-.453.102-.83.32-1.285.745-.296.277-.336.468-.167.798.053.103.61 1.104 1.236 2.224 1.297 2.317 1.22 2.206 1.558 2.202.152-.002.198-.015.296-.084a.662.662 0 00.173-.193c.058-.11.06-.152.08-2.595.018-1.93.015-2.51-.011-2.606a.569.569 0 00-.138-.227c-.09-.091-.14-.112-.406-.176-.582-.138-.992-.165-1.336-.088z'
/>
</svg>
)
}
2 changes: 2 additions & 0 deletions apps/docs/components/ui/icon-mapping.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ import {
GoogleVaultIcon,
GrafanaIcon,
GrainIcon,
GreptileIcon,
HubspotIcon,
HuggingFaceIcon,
HunterIOIcon,
Expand Down Expand Up @@ -158,6 +159,7 @@ export const blockTypeToIconMap: Record<string, IconComponent> = {
google_vault: GoogleVaultIcon,
grafana: GrafanaIcon,
grain: GrainIcon,
greptile: GreptileIcon,
hubspot: HubspotIcon,
huggingface: HuggingFaceIcon,
hunter: HunterIOIcon,
Expand Down
136 changes: 136 additions & 0 deletions apps/docs/content/docs/de/tools/greptile.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
---
title: Greptile
description: KI-gestützte Codebase-Suche und Fragen & Antworten
---

import { BlockInfoCard } from "@/components/ui/block-info-card"

<BlockInfoCard
type="greptile"
color="#e5e5e5"
/>

{/* MANUAL-CONTENT-START:intro */}
[Greptile](https://greptile.com/) ist ein KI-gestütztes Entwicklertool zum Durchsuchen und Abfragen von Quellcode über ein oder mehrere Repositories hinweg. Greptile ermöglicht es Entwicklern, komplexe Fragen zur Codebase schnell in natürlicher Sprache zu beantworten, relevante Dateien oder Symbole zu finden und Einblicke in unbekannten oder Legacy-Code zu gewinnen.

Mit Greptile können Sie:

- **Komplexe Fragen zu Ihrer Codebase in natürlicher Sprache stellen**: Erhalten Sie KI-generierte Antworten zu Architektur, Verwendungsmustern oder spezifischen Implementierungen.
- **Relevanten Code, Dateien oder Funktionen sofort finden**: Suchen Sie mit Schlüsselwörtern oder natürlichsprachlichen Abfragen und springen Sie direkt zu passenden Zeilen, Dateien oder Codeblöcken.
- **Abhängigkeiten und Beziehungen verstehen**: Entdecken Sie, wo Funktionen aufgerufen werden, wie Module miteinander verbunden sind oder wo APIs in großen Codebasen verwendet werden.
- **Onboarding und Code-Exploration beschleunigen**: Arbeiten Sie sich schnell in neue Projekte ein oder debuggen Sie knifflige Probleme, ohne tiefgreifenden Vorkontext zu benötigen.

Die Sim Greptile-Integration ermöglicht es Ihren KI-Agenten:

- Private und öffentliche Repositories mithilfe der fortschrittlichen Sprachmodelle von Greptile abzufragen und zu durchsuchen.
- Kontextuell relevante Code-Snippets, Dateiverweise und Erklärungen abzurufen, um Code-Reviews, Dokumentation und Entwicklungsworkflows zu unterstützen.
- Automatisierungen in Sim-Workflows basierend auf Such-/Abfrageergebnissen auszulösen oder Code-Intelligenz direkt in Ihre Prozesse einzubetten.

Egal, ob Sie die Produktivität von Entwicklern beschleunigen, Dokumentation automatisieren oder das Verständnis Ihres Teams für eine komplexe Codebase verbessern möchten – Greptile und Sim bieten nahtlosen Zugriff auf Code-Intelligenz und Suche, genau dort, wo Sie sie benötigen.
{/* MANUAL-CONTENT-END */}

## Nutzungsanleitung

Fragen Sie Codebasen mit natürlicher Sprache über Greptile ab und durchsuchen Sie sie. Erhalten Sie KI-generierte Antworten zu Ihrem Code, finden Sie relevante Dateien und verstehen Sie komplexe Codebasen.

## Tools

### `greptile_query`

Durchsuchen Sie Repositories in natürlicher Sprache und erhalten Sie Antworten mit relevanten Code-Referenzen. Greptile nutzt KI, um Ihre Codebasis zu verstehen und Fragen zu beantworten.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `query` | string | Ja | Frage in natürlicher Sprache zur Codebasis |
| `repositories` | string | Ja | Kommagetrennte Liste von Repositories. Format: "github:branch:owner/repo" oder nur "owner/repo" \(Standard ist github:main\) |
| `sessionId` | string | Nein | Sitzungs-ID für Gesprächskontinuität |
| `genius` | boolean | Nein | Genius-Modus für gründlichere Analyse aktivieren \(langsamer, aber genauer\) |
| `apiKey` | string | Ja | Greptile-API-Schlüssel |
| `githubToken` | string | Ja | GitHub Personal Access Token mit Lesezugriff auf Repositories |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | KI-generierte Antwort auf die Anfrage |
| `sources` | array | Relevante Code-Referenzen, die die Antwort unterstützen |

### `greptile_search`

Durchsuchen Sie Repositories in natürlicher Sprache und erhalten Sie relevante Code-Referenzen ohne Generierung einer Antwort. Nützlich zum Auffinden spezifischer Code-Stellen.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `query` | string | Ja | Suchanfrage in natürlicher Sprache zum Auffinden relevanten Codes |
| `repositories` | string | Ja | Kommagetrennte Liste von Repositories. Format: "github:branch:owner/repo" oder nur "owner/repo" \(Standard ist github:main\) |
| `sessionId` | string | Nein | Sitzungs-ID für Gesprächskontinuität |
| `genius` | boolean | Nein | Genius-Modus für gründlichere Suche aktivieren \(langsamer, aber genauer\) |
| `apiKey` | string | Ja | Greptile-API-Schlüssel |
| `githubToken` | string | Ja | GitHub Personal Access Token mit Lesezugriff auf Repositories |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `sources` | array | Relevante Code-Referenzen, die zur Suchanfrage passen |

### `greptile_index_repo`

Übermitteln Sie ein Repository zur Indexierung durch Greptile. Die Indexierung muss abgeschlossen sein, bevor das Repository abgefragt werden kann. Kleine Repositories benötigen 3-5 Minuten, größere können über eine Stunde dauern.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `remote` | string | Ja | Git-Remote-Typ: github oder gitlab |
| `repository` | string | Ja | Repository im Format owner/repo \(z. B. "facebook/react"\) |
| `branch` | string | Ja | Zu indexierender Branch \(z. B. "main" oder "master"\) |
| `reload` | boolean | Nein | Neuindexierung erzwingen, auch wenn bereits indexiert |
| `notify` | boolean | Nein | E-Mail-Benachrichtigung senden, wenn Indexierung abgeschlossen ist |
| `apiKey` | string | Ja | Greptile-API-Schlüssel |
| `githubToken` | string | Ja | GitHub Personal Access Token mit Lesezugriff auf Repository |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `repositoryId` | string | Eindeutige Kennung für das indexierte Repository \(Format: remote:branch:owner/repo\) |
| `statusEndpoint` | string | URL-Endpunkt zur Überprüfung des Indexierungsstatus |
| `message` | string | Statusmeldung über den Indexierungsvorgang |

### `greptile_status`

Überprüfen Sie den Indexierungsstatus eines Repositories. Verwenden Sie dies, um zu verifizieren, ob ein Repository abfragebereit ist, oder um den Indexierungsfortschritt zu überwachen.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `remote` | string | Ja | Git-Remote-Typ: github oder gitlab |
| `repository` | string | Ja | Repository im Format owner/repo \(z. B. "facebook/react"\) |
| `branch` | string | Ja | Branch-Name \(z. B. "main" oder "master"\) |
| `apiKey` | string | Ja | Greptile-API-Schlüssel |
| `githubToken` | string | Ja | GitHub Personal Access Token mit Lesezugriff auf das Repository |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `repository` | string | Repository-Name \(owner/repo\) |
| `remote` | string | Git-Remote \(github/gitlab\) |
| `branch` | string | Branch-Name |
| `private` | boolean | Ob das Repository privat ist |
| `status` | string | Indexierungsstatus: submitted, cloning, processing, completed oder failed |
| `filesProcessed` | number | Anzahl der bisher verarbeiteten Dateien |
| `numFiles` | number | Gesamtanzahl der Dateien im Repository |
| `sampleQuestions` | array | Beispielfragen für das indexierte Repository |
| `sha` | string | Git-Commit-SHA der indexierten Version |

## Hinweise

- Kategorie: `tools`
- Typ: `greptile`
141 changes: 141 additions & 0 deletions apps/docs/content/docs/en/tools/greptile.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
---
title: Greptile
description: AI-powered codebase search and Q&A
---

import { BlockInfoCard } from "@/components/ui/block-info-card"

<BlockInfoCard
type="greptile"
color="#e5e5e5"
/>

{/* MANUAL-CONTENT-START:intro */}
[Greptile](https://greptile.com/) is an AI-powered developer tool for searching and querying source code across one or more repositories. Greptile enables engineers to quickly answer complex codebase questions in natural language, locate relevant files or symbols, and gain insights into unfamiliar or legacy code.

With Greptile, you can:

- **Ask complex questions about your codebase in natural language**: Get AI-generated answers about architecture, usage patterns, or specific implementations.
- **Find relevant code, files, or functions instantly**: Search using keywords or natural language queries and jump right to matching lines, files, or code blocks.
- **Understand dependencies and relationships**: Uncover where functions are called, how modules are related, or where APIs are used across large codebases.
- **Accelerate onboarding and code exploration**: Quickly ramp up on new projects or debug tricky issues without needing deep prior context.

The Sim Greptile integration allows your AI agents to:

- Query and search private and public repositories using Greptile’s advanced language models.
- Retrieve contextually relevant code snippets, file references, and explanations to support code review, documentation, and development workflows.
- Trigger automations in Sim workflows based on search/query results or embed code intelligence directly into your processes.

Whether you’re trying to accelerate developer productivity, automate documentation, or supercharge your team’s understanding of a complex codebase, Greptile and Sim provide seamless access to code intelligence and search—right where you need it.
{/* MANUAL-CONTENT-END */}


## Usage Instructions

Query and search codebases using natural language with Greptile. Get AI-generated answers about your code, find relevant files, and understand complex codebases.



## Tools

### `greptile_query`

Query repositories in natural language and get answers with relevant code references. Greptile uses AI to understand your codebase and answer questions.

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `query` | string | Yes | Natural language question about the codebase |
| `repositories` | string | Yes | Comma-separated list of repositories. Format: "github:branch:owner/repo" or just "owner/repo" \(defaults to github:main\) |
| `sessionId` | string | No | Session ID for conversation continuity |
| `genius` | boolean | No | Enable genius mode for more thorough analysis \(slower but more accurate\) |
| `apiKey` | string | Yes | Greptile API key |
| `githubToken` | string | Yes | GitHub Personal Access Token with repo read access |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | AI-generated answer to the query |
| `sources` | array | Relevant code references that support the answer |

### `greptile_search`

Search repositories in natural language and get relevant code references without generating an answer. Useful for finding specific code locations.

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `query` | string | Yes | Natural language search query to find relevant code |
| `repositories` | string | Yes | Comma-separated list of repositories. Format: "github:branch:owner/repo" or just "owner/repo" \(defaults to github:main\) |
| `sessionId` | string | No | Session ID for conversation continuity |
| `genius` | boolean | No | Enable genius mode for more thorough search \(slower but more accurate\) |
| `apiKey` | string | Yes | Greptile API key |
| `githubToken` | string | Yes | GitHub Personal Access Token with repo read access |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `sources` | array | Relevant code references matching the search query |

### `greptile_index_repo`

Submit a repository to be indexed by Greptile. Indexing must complete before the repository can be queried. Small repos take 3-5 minutes, larger ones can take over an hour.

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `remote` | string | Yes | Git remote type: github or gitlab |
| `repository` | string | Yes | Repository in owner/repo format \(e.g., "facebook/react"\) |
| `branch` | string | Yes | Branch to index \(e.g., "main" or "master"\) |
| `reload` | boolean | No | Force re-indexing even if already indexed |
| `notify` | boolean | No | Send email notification when indexing completes |
| `apiKey` | string | Yes | Greptile API key |
| `githubToken` | string | Yes | GitHub Personal Access Token with repo read access |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `repositoryId` | string | Unique identifier for the indexed repository \(format: remote:branch:owner/repo\) |
| `statusEndpoint` | string | URL endpoint to check indexing status |
| `message` | string | Status message about the indexing operation |

### `greptile_status`

Check the indexing status of a repository. Use this to verify if a repository is ready to be queried or to monitor indexing progress.

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `remote` | string | Yes | Git remote type: github or gitlab |
| `repository` | string | Yes | Repository in owner/repo format \(e.g., "facebook/react"\) |
| `branch` | string | Yes | Branch name \(e.g., "main" or "master"\) |
| `apiKey` | string | Yes | Greptile API key |
| `githubToken` | string | Yes | GitHub Personal Access Token with repo read access |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `repository` | string | Repository name \(owner/repo\) |
| `remote` | string | Git remote \(github/gitlab\) |
| `branch` | string | Branch name |
| `private` | boolean | Whether the repository is private |
| `status` | string | Indexing status: submitted, cloning, processing, completed, or failed |
| `filesProcessed` | number | Number of files processed so far |
| `numFiles` | number | Total number of files in the repository |
| `sampleQuestions` | array | Sample questions for the indexed repository |
| `sha` | string | Git commit SHA of the indexed version |



## Notes

- Category: `tools`
- Type: `greptile`
1 change: 1 addition & 0 deletions apps/docs/content/docs/en/tools/meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
"google_vault",
"grafana",
"grain",
"greptile",
"hubspot",
"huggingface",
"hunter",
Expand Down
Loading
Loading