xsavikx/okf-skills

okf-csv

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

Vedi sorgente
Documento Skill originale

Contenuto dal repository con titoli, esempi, codice, tabelle, link e immagini preservati.

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.

dallo stesso repository

Altri Skills

Tutti gli 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.

installazioni
1
GitHub Stars
34
Aggiornato
30 ago
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.

installazioni
1
GitHub Stars
34
Aggiornato
30 ago
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 Go.

installazioni
1
GitHub Stars
34
Aggiornato
30 ago
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.

installazioni
1
GitHub Stars
34
Aggiornato
30 ago