No description
| .forgejo/workflows | ||
| .github/prompts | ||
| .specify/memory | ||
| apps/web | ||
| drizzle | ||
| examples | ||
| public | ||
| specs/001-kites-v1-hybrid | ||
| src | ||
| .DS_Store | ||
| .gitignore | ||
| docker-compose.yml | ||
| Dockerfile | ||
| drizzle.config.ts | ||
| eslint.config.mjs | ||
| fix_deployment_plan.md | ||
| next.config.ts | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.mjs | ||
| README.md | ||
| sqlite.db | ||
| tsconfig.json | ||
Kites - Agentic Pastebin
Kites is a clean, agent-native pastebin service designed for LLMs and humans. It features a simple API, structured data model (Sessions, Tags), and a polished UI.
Features
- Agent-First API: Simple REST endpoints for creating and retrieving pastes.
- Sessions: Group pastes by "run" or logical session.
- Tags: Organize pastes with tags.
- Syntax Highlighting: Automatic highlighting for various languages.
- Theming: Light and Dark mode support.
- Self-Hostable: Built with Next.js and SQLite for easy deployment.
Tech Stack
- Framework: Next.js 15 (App Router)
- Database: SQLite
- ORM: Drizzle ORM
- Styling: Tailwind CSS v4
- Validation: Zod
Getting Started
Prerequisites
- Node.js 18+
- npm
Installation
-
Clone the repository:
git clone https://github.com/fullsizemalt/kites.git cd kites -
Install dependencies:
npm install -
Initialize the database:
npx drizzle-kit push -
Run the development server:
npm run devOpen http://localhost:3000 with your browser.
API Usage
Create a Paste
curl -X POST http://localhost:3000/api/v1/pastes \
-H "Content-Type: application/json" \
-d '{
"content": "console.log(\"Hello Kites!\");",
"title": "My First Paste",
"syntax": "javascript",
"tags": ["demo", "js"]
}'
Get a Paste (Raw)
curl http://localhost:3000/api/v1/pastes/<PASTE_ID>?raw=1
Create a Session
curl -X POST http://localhost:3000/api/v1/sessions \
-H "Content-Type: application/json" \
-d '{
"title": "Agent Run 101",
"agentName": "GPT-4"
}'
Agent Example
See examples/agent_usage.py for a Python script that demonstrates how an agent can interact with Kites.
python3 examples/agent_usage.py