Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
AI Agent as a Pinix Clip — agentic loop with memory, tools, and vision
| Date | Stars |
|---|---|
| 2026-07-31 | 420 |
| 2026-08-06 | 420 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# Agent Clip
AI Agent as a [Pinix Clip](https://github.com/epiral/pinix) — agentic loop with memory, tool use, vision, and async execution.
[English](README.md) | [中文](README.zh-CN.md)
## Quick Start
```bash
# Local development
make dev # build macOS binary + init data/
cd ui && pnpm install && cd .. # install frontend deps (first time)
# Add your API key to data/config.yaml
# Chat
bin/agent-local send -p "hello"
# Build frontend
make ui # ui/ → web/
```
## Build & Deploy
```bash
# Development (workdir mode — Pinix reads repo directly)
make deploy # cross-compile linux/arm64 + build frontend
# Production (package for remote install)
make package # → dist/agent.clip
pinix clip install dist/agent.clip # first time
pinix clip upgrade dist/agent.clip # update (preserves data/)
```
| Make target | What it does |
|-------------|-------------|
| `make build-local` | Go binary for macOS |
| `make build` | Go binary for BoxLite VM (linux/arm64) |
| `make ui` | Build frontend `ui/` → `web/` |
| `make dev` | `build-local` + init `data/` from `seed/` |
| `make deploy` | `build` + `ui` (workdir mode, changes are live) |
| `make package` | ZIP → `dist/agent.clip` for `pinix clip install/upgrade` |
| `make clean` | Remove `bin/` `data/` `web/` `dist/` |
## Architecture
```
Agent Clip (this repo)
│
├─ commands/ External interface (Pinix ClipService.Invoke)
│ send, create-topic, list-topics, get-run, cancel-run, config
│
├─ run(cmd, stdin?) Single LLM function call
│ ├─ File I/O: ls, cat, write, stat, rm, cp, mv, mkdir
│ ├─ Memory: memory search/recent/store/facts/forget
│ ├─ Topics: topic list/info/runs/run/search/rename
│ ├─ Clips: clip <name> <command> [args...] / pull / push
│ │ (supports Edge Clips — e.g. iPhone capabilities)
│ ├─ Browser: browser <action> [params...] (auto-saves screenshots)
│ ├─ Chaining: cmd1 | cmd2 && cmd3 ; cmd4
│ └─ Utils: echo, time, help, grep, head, tail, wc
│
├─ Topics Named conversation namespaces (SQLite)
├─ Runs One agentic loop per send (sync / async)
├─ Memory Summaries + embeddings + facts + semantic search
├─ Vision Browser screenshots auto-attached as vision content
├─ Images pinix-data:// URLs for in-chat image rendering
└─ Output CLI (raw) / Web (jsonl) dual interface
```
## Core Concepts
### Topic
A named conversation namespace. All messages belong to a topic. Created automatically on first `send`, or explicitly via `create-topic`. Topics are sorted by last message time.
### Run
A single agentic loop cycle — from user message to LLM's `finish_reason: "stop"`. A Run may involve multiple LLM calls and tool executions. Runs within a topic form the conversation history.
### Memory
Three layers:
- **Facts** — persistent knowledge (`memory store/facts/forget`)
- **Summaries** — LLM-generated per-Run summary + embedding
- **Semantic search** — cosine similarity over summary embeddings
### Clip
External capabilities invoked via `run("clip <name> <command> [args...]")`. Each Clip is a separate service registered in `data/config.yaml`. Uses Pinix ClipService.Invoke protocol. Supports `clip pull/push` for cross-Clip file transfer.
### File I/O
Standard Linux-named commands (`ls`, `cat`, `write`, `stat`, `rm`, `cp`, `mv`, `mkdir`) operating on the `data/` directory. Image files saved via `write -b` return a `pinix-data://` URL for in-chat rendering.
### Vision
Browser screenshots are automatically saved to `data/images/` and attached as vision content to the LLM API call. The LLM can "see" screenshots it takes. Image URLs use `pinix-data://local/data/...` format for rendering in Clip Dock.
## Commands
### External (Pinix interface)
| Command | Usage | Description |
|---------|-------|---------Excerpt of 9,823 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:4cb4eaee0e3d8983, llm:description: 'AI Agent as a Pinix Clip — agentic loop with memory, tools, and vision' (agent, memory, tools, vision)
matched fp:4cb4eaee0e3d8983, llm:description: 'AI Agent as a Pinix Clip — agentic loop with memory, tools, and vision' (agent, memory, tools, vision)
matched fp:4cb4eaee0e3d8983, llm:description: 'AI Agent as a Pinix Clip — agentic loop with memory, tools, and vision' (agent, memory, tools, vision)