Indexed
Indexing

Manage Your Index

Create, inspect, update, and remove Indexed collections — task-by-task with the CLI.

Create, Inspect, Update & Remove

By the end of this guide, you will know how to create a collection from any connector, inspect its contents, keep it up to date, and remove it cleanly.

Prerequisites

  • Indexed installed and workspace initialized (indexed config init; see Quick Start)
  • At least one source to index (a local directory, Jira project, or Confluence space)

Create

Generic pattern

indexed index create <connector> -c <name> [flags]

The CLI registers three connectors: files, jira, and confluence. Jira Cloud, Jira Server/DC, Confluence Cloud, and Confluence Server/DC all use the same commands; the base URL (-u) and how you authenticate distinguish the deployment type (see each connector page).

The -c flag sets the collection name — use a short, memorable slug like my-docs or eng-tickets.

Path, URL, JQL/CQL, includes/excludes, and credential patterns live in the connector guides (not duplicated here):

For every flag and default, use Index commands or indexed index create <connector> --help.

Overwriting an existing collection

If a collection with the same name already exists, use --force to overwrite it rather than getting an error:

indexed index create files -c my-docs -p ./docs --force

Example output

Indexing collection 'my-docs'...
  Parsed 24 documents
  Created 96 chunks
  Generated embeddings
✓ Collection 'my-docs' created (96 chunks, 5.1 MB)

Inspect

View all collections

indexed index inspect

Add --verbose (or -v) when you want more detail for every collection in the list:

indexed index inspect --verbose
Collections (2):

  my-docs
    Type:       files
    Source:     /Users/you/work/docs
    Documents:  24
    Chunks:     96
    Size:       5.1 MB
    Created:    2026-04-06 10:15:33
    Updated:    2026-04-08 09:00:12

  eng-tickets
    Type:       jira
    Source:     https://company.atlassian.net
    Query:      project = ENG AND created >= -90d
    Documents:  142
    Chunks:     318
    Size:       12.4 MB
    Created:    2026-04-06 14:30:22
    Updated:    2026-04-08 09:00:18

View a single collection

indexed index inspect my-docs

JSON output

For machine-readable output, use the global --simple-output flag before the subcommand:

indexed --simple-output index inspect my-docs

The JSON shape is versioned with the CLI; pipe it to jq or your own tooling. See Index commands for flags.


Update

Update a single collection

indexed index update my-docs
Updating collection 'my-docs'...
  Before: 24 documents, 96 chunks
  After:  28 documents, 112 chunks
✓ Collection 'my-docs' updated

Update all collections at once

indexed index update

This re-fetches and re-embeds only what changed since the last index run. For file-based collections, Indexed detects changes using the configured strategy (git diff, content hash, mtime, or none). For Jira and Confluence, it re-fetches items modified since the updated_at timestamp.

Automating updates with cron

Running indexed index update on a schedule keeps your collections fresh without manual intervention. Add this to your crontab (crontab -e):

# Update all Indexed collections every day at 6am (use the path from `which indexed`)
0 6 * * * /path/to/indexed index update 2>&1 >> ~/.indexed/update.log

PATH in cron

Cron runs with a minimal PATH. Use the full path to the indexed binary — find it with which indexed.

For project-specific automation, add indexed index update <name> as a step in your CI pipeline or as a git post-merge hook.


Remove

Removal is permanent: it deletes the collection directory (for example ~/.indexed/data/collections/<name>/ when not using --local). There is no undo — re-indexing from the source is the only recovery path.

# Interactive (asks for confirmation)
indexed index remove my-docs
# Non-interactive (for scripts and CI)
indexed index remove my-docs --force

There is no undo

Removal deletes all files under the collection directory. Re-indexing from the source is the only recovery path.

To remove every collection, run indexed index remove <name> --force for each name shown by indexed index inspect.

What's Next