Metadata-Version: 2.4
Name: outline-kb-cli
Version: 0.1.0
Summary: A Python client and CLI for Outline knowledge bases
Author-email: VisualDust <gavin@gong.host>
Maintainer-email: VisualDust <gavin@gong.host>
License: MIT
Project-URL: Homepage, https://github.com/visualdust/outline-skills
Project-URL: Repository, https://github.com/visualdust/outline-skills
Project-URL: Issues, https://github.com/visualdust/outline-skills/issues
Project-URL: Documentation, https://github.com/visualdust/outline-skills#readme
Keywords: outline,knowledge-base,documentation,wiki,collaboration,cli,api-client
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Office/Business
Classifier: Topic :: Documentation
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: pre-commit>=3.7; extra == "dev"
Requires-Dist: ruff>=0.11.0; extra == "dev"
Requires-Dist: mypy>=1.0; extra == "dev"
Dynamic: license-file

# Outline Skills

Agent skill plus Python CLI for interacting with [Outline](https://www.getoutline.com/) knowledge bases through the Outline API.

## Features

- Cross-agent support for Claude Code, Codex, Cursor, Windsurf, and similar tools
- Standalone CLI published as `outline-kb-cli`
- Coverage for documents, collections, search, users, groups, comments, attachments, shares, stars, revisions, events, views, and file operations
- Includes membership/permission workflows (document, collection, and group user/group assignments)
- Config via CLI flags, environment variables, or config files
- Works on Windows, Linux, and macOS

## Installation

### CLI

```bash
pip install outline-kb-cli
```

### From source

```bash
git clone https://github.com/visualdust/outline-skills.git
cd outline-skills
pip install -e .
```

### Agent skill

- Claude Code: `/plugin marketplace add visualdust/outline-skills` then `/plugin install outline-skills`
- Other agents: `npx skills add visualdust/outline-skills -a codex -a cursor -a windsurf`

## Quick Start

### Authentication

```bash
export OUTLINE_API_KEY="ol_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
export OUTLINE_BASE_URL="https://app.getoutline.com/api"  # optional
```

Or create `.outline-skills/config.json`:

```json
{
  "api_key": "ol_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "base_url": "https://app.getoutline.com/api"
}
```

Configuration priority:
1. CLI flags (`--api-key`, `--base-url`, `--timeout`)
2. Environment variables
3. Project config (`.outline-skills/config.json`)
4. User config (`~/.outline-skills/config.json`)

### CLI examples

```bash
outline-cli search "API documentation"
outline-cli collections list
outline-cli documents info --id "document-id"
outline-cli documents create --title "My Document" --text "Hello" --collection-id "collection-id"
```

Aliases:
- `outline-cli docs` / `outline-cli doc` -> `outline-cli documents`
- `outline-cli colls` / `outline-cli coll` -> `outline-cli collections`

## AI Agent Usage

Examples:

```text
Use $outline-skills to search Outline for onboarding docs
Create a new Outline document in the Engineering collection
List all collections in my Outline workspace
```

## Documentation

- [skills/outline-skills/SKILL.md](skills/outline-skills/SKILL.md) - complete agent-facing guide
- [AGENTS.md](AGENTS.md) - root agent instructions

## Development

### Project structure

```text
outline-skills/
├── outline_cli/             # Python package
│   ├── cli.py               # Unified CLI implementation
│   ├── client.py            # Outline API client
│   ├── config.py            # Configuration loading
├── skills/outline-skills/   # Skill docs
├── agents/                  # Agent-specific metadata
├── tests/                   # Test suite
├── AGENTS.md                # Root agent instructions
└── README.md                # Human-facing overview
```

### Validation

```bash
python -m ruff check .
python -m mypy outline_cli
python -m pytest
```

## License

MIT License - see [LICENSE](LICENSE).
