agentic-fs connector SDK: crawl a source and ingest into agentic-fs. Ships the fs-crawler CLI plus Local FS and S3 connectors.
Project description
afs-connector-sdk
Crawl a source and ingest its documents into agentic-fs.
Ships the fs-crawler CLI plus Local FS and S3 connectors.
pip install afs-connector-sdk # Local FS connector + unauthenticated/bearer APIs
pip install "afs-connector-sdk[aws]" # adds the S3 connector + SigV4 signing for AWS_IAM Function URLs
CLI
# Crawl a local folder into a dev server
fs-crawler --connector local --source ./docs \
--api-url http://localhost:8080 --namespace docs
# Crawl an S3 prefix into the deployed (AWS_IAM) Function URL
fs-crawler --connector s3 --source s3://my-bucket/reports/ \
--api-url "$FUNCTION_URL" --namespace reports --auth sigv4 --region us-east-1
# Mirror exactly (also delete docs no longer at the source)
fs-crawler --connector local --source ./docs --api-url "$URL" --namespace docs --prune
Re-runs are cheap and idempotent: a document is skipped unless its content checksum differs from what agentic-fs already has, so nothing is re-extracted needlessly.
Library
from afs_connector_sdk import IngestClient, SyncEngine, SigV4Signer, build_connector
connector = build_connector("local", "./docs")
async with IngestClient(api_url, signer=SigV4Signer(region="us-east-1")) as client:
report = await SyncEngine(client).sync(connector, namespace="docs")
Writing a connector
Implement afs_core.contracts.Connector (discover() → SourceItems, fetch(item) →
bytes), certify it against afs_core.testing.ConnectorConformance, and register an
afs.connectors entry point. Source-side auth lives in your connector; the SDK
handles everything else. See the connector swap guide.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file afs_connector_sdk-0.1.0.tar.gz.
File metadata
- Download URL: afs_connector_sdk-0.1.0.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
170a8b3fbafda5d80b66c0fc2a82ea2495b884d9bfe15cb60be89b9b20033b89
|
|
| MD5 |
91d5de76962ff03718c744eb2f164368
|
|
| BLAKE2b-256 |
a86649542ac31c1556959767cea1ed0433d63d393c69f9fdefff115f93e60c31
|
File details
Details for the file afs_connector_sdk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: afs_connector_sdk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1865f090bd99b52613415d7077083ad7534d0efb3608d4dfd9103d8efb46b589
|
|
| MD5 |
a2ea8ebcfecdb05e686d8172977aed90
|
|
| BLAKE2b-256 |
96c639f48a8c4a520bf15a04785cea7c19a3064d929414c16377763baf3bf930
|