xsavikx/okf-skills

okf-csv

CSV connector that produces and ingests Open Knowledge Format (OKF) bundles from a directory of CSV files.

View source

How to use

  1. Copy the installation command and review the source package before installing it in your own agent environment.
  2. Check the source document for required tools, credentials and supported hosts.
  3. Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/xsavikx/okf-skills --skill okf-csv

Before you start

  • Installation does not include a model subscription, API allowance or permission to access your files.
  • Repository stars and installation counts describe activity, not an independent quality or security test.
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

CSV OKF Connector

This skill provides a Go-based CLI tool to document a directory of CSV files as an Open Knowledge Format (OKF) bundle: one concept per CSV, with an inferred column schema and an optional data profile, and to sync enriched descriptions back to a .okf-metadata.yaml sidecar.

When to Use

Use this skill when you need to:

  1. Catalog a folder of CSV files — each becomes a CSV File concept under tables/,

with a # Columns table whose types are inferred by sampling values.

  1. Capture per-column statistics (--profile) and sample rows (--sample) as

grounding for enrichment.

  1. Round-trip enriched descriptions back to the source via .okf-metadata.yaml.

CSV has no declared types or comment store, so column types are inferred and descriptions live in the sidecar (the same pattern okf-fs uses).

Setup

bash
# Install the published binary (Go 1.24+):
go install github.com/xSAVIKx/okf-skills/skills/okf-csv@latest

# …or build from a clone:
cd skills/okf-csv && go build -o okf-csv .

How to Use

1. Produce an OKF bundle

bash
./okf-csv produce --dir <csv-directory> --out <bundle-dir> [--sample <N>] [--profile]
  • --dir (required): directory of CSV files (traversed recursively, honoring .okfignore).
  • --out (required): output OKF bundle directory.
  • --sample <N>: embed up to N sample rows per file as a ## Sample section.
  • --profile: compute per-column statistics (non-null, null, distinct, min, max,

detected semantic type, low-cardinality value sets) into a ## Data Profile section.

Each data/orders.csv becomes tables/orders.md. Re-running preserves unchanged concepts byte-for-byte (incremental produce), keeping any enriched descriptions.

2. Ingest / sync descriptions

bash
./okf-csv ingest --dir <csv-directory> --bundle <bundle-dir> [--sync]
  • Verifies each concept's columns still match its CSV header (reports drift).
  • --sync: writes the bundle's descriptions back to .okf-metadata.yaml in --dir.

3. Inspect the schema (self-description)

bash
./okf-csv schema

Prints the machine-readable JSON description used by okf-mcp to expose the skill.

Related by task

from this repository

More skills

All skills
xsavikx
Community

okf-enrich

Guidance for an AI agent to enrich an Open Knowledge Format (OKF) bundle with high-quality concept descriptions using its own LLM — grounded in the bundle's schema, data profile, and samples — then optionally sync them back to the source. Use when an OKF bundle has missing, weak, or low-quality descriptions that should be improved before publishing or ingestion. Instructions-only; no binary required.

installs
1
GitHub stars
34
Updated
Aug 30
xsavikx
Community

okf-fs

Local filesystem connector that produces and ingests Open Knowledge Format (OKF) bundles documenting directory trees and file metadata, honoring .okfignore and .okf-metadata.yaml. Use when documenting or cataloging a local folder structure, or capturing filesystem metadata as an OKF bundle.

installs
1
GitHub stars
34
Updated
Aug 30
xsavikx
Community

okf-graphql

GraphQL connector that produces and ingests Open Knowledge Format (OKF) bundles from a GraphQL SDL document. Parses the schema into one concept per user-defined type (object/input/interface/enum/union) and per root operation (query/mutation/subscription field), links fields and operations to the types they reference as native relationship edges, and syncs descriptions back to a .okf-metadata.yaml sidecar. Use when documenting or cataloging a GraphQL API from its schema, with no live server. Pure

installs
1
GitHub stars
34
Updated
Aug 30
xsavikx
Community

okf-mysql

MySQL connector that produces and ingests Open Knowledge Format (OKF) bundles from database schemas and table/column comments. Use when documenting or cataloging a MySQL database, extracting its schema and comments into OKF, or syncing descriptions back to MySQL via DDL.

installs
1
GitHub stars
34
Updated
Aug 30