aistore / python
AGENTS.md1.9k starsChanged 8 days agoMITView on GitHub
Python clients and integrations for AIStore: SDK, PyTorch datasets, Botocore support, and MCP tools. Before changing PyTorch code, tests, or examples, read its instructions. Paths below are relative to python/: Consult only the references needed for the change: Use Python 3.10+ and reuse an existing virtual environment when available. For environment setup or missing dependencies, follow the SDK README and test guide. Run pytest from python/, selecting only tests affected by the change. Confirm they ran; skips or no matches…
We split this AGENTS.md into the rules it gives an agent
9 rules. About 2 are common, 4 are distinctive, and 3 are very specific to this project.
≈2
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 6
Before changing PyTorch code, tests, or examples, read its instructions.
- Very specific: line 42
Use Python 3.10+ and reuse an existing virtual environment when available.
- Very specific: line 44
Run pytest from python/, selecting only tests affected by the change.
- Common: line 52
Use unique test bucket and object names.
- Common: line 53
Do not stop or redeploy a shared cluster without authorization.
- Distinctive: line 79
Before changing shared code, inspect its callers and affected tests.
- Distinctive: line 83
Keep public APIs typed and documented.
- Distinctive: line 84
Check request/response formats against the Go API and server handlers when changing protocol behavior.
- Distinctive: line 88
Keep optional dependencies in their existing extras.
≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AIS Python SDK Agent Instructions
Python clients and integrations for AIStore: SDK, PyTorch datasets, Botocore support, and MCP tools.
Before changing PyTorch code, tests, or examples, read its
instructions. Paths below are relative to python/:
aistore/ installable AIStore package
aistore/sdk/ cluster, bucket, and object client APIs
aistore/sdk/authn/ authentication, users, roles, and tokens
aistore/sdk/batch/ batch object retrieval and response extraction
aistore/sdk/dataset/ dataset and shard creation utilities
aistore/sdk/dsort/ distributed sorting job configuration and control
aistore/sdk/etl/ ETL configuration and transformation servers
aistore/sdk/multiobj/ object groups, ranges, and bulk operations
aistore/sdk/obj/ object readers, writers, and streaming I/O
aistore/pytorch/ PyTorch datasets, shard readers, and samplers
aistore/botocore_patch/ Botocore redirect support for AIStore S3 access
aistore/mcp/ MCP server and tools for inspecting AIStore
tests/unit/ unit tests grouped by component
tests/integration/ cluster tests grouped by component
tests/perf/ performance benchmarks
tests/s3compat/ S3 compatibility tests
examples/ SDK, PyTorch, ETL, Dask, and deployment notebooks
pyaisloader/ separately packaged Python SDK benchmark CLIReferences
Consult only the references needed for the change:
- SDK README: installation, client APIs, and configuration.
- Test guide and Makefile: dependencies and test suites.
- pyproject.toml: supported Python versions and package extras.
- Local playground: cluster setup.
- CONTRIBUTING.md: contributor requirements and commit guidance.
Setup and Verification
Use Python 3.10+ and reuse an existing virtual environment when available.
For environment setup or missing dependencies, follow the SDK README and test guide.
Run pytest from python/, selecting only tests affected by the change. Confirm
they ran; skips or no matches do not verify behavior.
For integration tests, set AIS_ENDPOINT to a running, disposable AIStore cluster.
Set BUCKET only for remote-bucket tests and provide the matching
backend credentials. ETL, AuthN, and extended tests need additional setup; consult
the test guide and Makefile when affected. Keep nonparallel tests serial.
Use unique test bucket and object names; delete only data created by the test. Do not stop or redeploy a shared cluster without authorization. Keep credentials out of logs.
Extend an existing test with an assertion or parameterized case when it covers
the changed behavior; add a separate test for a distinct failure scenario.
Reuse existing fixtures and helpers in tests/unit/sdk/ and
tests/integration/sdk/. Botocore patch unit tests require a fresh process per
file; run affected files in separate pytest invocations.
For code fixes, follow Testing Changes for integration evidence and verification with and without the fix. Rerun affected checks against the final changes. For test-only changes, run the affected tests; for documentation-only changes, run applicable documentation and spelling checks.
For Python code changes, run these checks from the repository root with the virtual environment still active:
make fmt-check spell-check
make lint-pythonReport checks, results, and any missing cluster, credentials, or skipped coverage.
Engineering Contracts
- Before changing shared code, inspect its callers and affected tests. Fix shared causes at the appropriate layer while preserving caller contracts. Keep unrelated cleanup out of the change.
- Preserve public signatures, defaults, return types, and exception behavior. Keep public APIs typed and documented; update relevant examples and docstrings.
- Check request/response formats against the Go API and server handlers when changing protocol behavior. Reuse existing SDK clients, models, and errors.
- Preserve streaming, retry/resume, and resource ownership contracts; test byte integrity and cleanup on failures for changes to object I/O.
- Keep optional dependencies in their existing extras; core SDK imports must work without PyTorch or other optional integrations installed.
Trending
More talk lately.about the whole repository
Who's talking about NVIDIA/aistore
- pytorch/pytorch“[RFC] Add tar-based IterableDataset implementation to PyTorch”GitHub · May 13, 2020 · 87 reactions
- FluxML/Flux.jl“WebDataset.jl, a linearly scalable data loader based on iterable datasets”GitHub · Apr 28, 2021 · 8 reactions
- medyagh/setup-minikube“Add Timeout Option for Minikube Setup”GitHub · Feb 22, 2025 · 4 reactions
- @taras.glek.net“Never really enjoyed working with minio. Looks like nvidia has a higher performing alternative (also in …”Bluesky · Dec 14, 2025 · 2 likes
- tensorflow/tensorflow“S3 ParseURI supporting query parameters”GitHub · Jul 28, 2020 · 2 reactions
The biggest 5 of 28 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 28
Talked about on GitHub and Bluesky (28 times).
On GitHub · 27
- May 13, 2020[RFC] Add tar-based IterableDataset implementation to PyTorch — pytorch/pytorch87 reactions · 32 comments
- Apr 28, 2021WebDataset.jl, a linearly scalable data loader based on iterable datasets — FluxML/Flux.jl8 reactions · 4 comments
- Feb 22, 2025Add Timeout Option for Minikube Setup — medyagh/setup-minikube4 reactions · 2 comments
- Jul 28, 2020S3 ParseURI supporting query parameters — tensorflow/tensorflow2 reactions · 8 comments
- Oct 21, 2026Add affected Go package and range to GHSA-958w-8f9q-43j8 — github/advisory-database0 reactions
22 more on GitHub
- Oct 21, 2026Add affected Go package and range to GHSA-vcwj-2rq7-52fc — github/advisory-database0 reactions
- Oct 2, 2026chore: Upgrade AIStore Nix package to 1.5.1. — NVIDIA/multi-storage-client0 reactions · 1 comment
- Sep 23, 2026Add an AIStore-compatible GetBatch API for ML workloads — rustfs/rustfs0 reactions · 2 comments
- Aug 18, 2026fix: RangeReader returns 0 bytes when length is ContentLengthUnknown — andrewwhitecdw/aistore0 reactions
- Jul 14, 2026fix(msfs): interpret AIStore Atime as nanoseconds, not microseconds — NVIDIA/multi-storage-client0 reactions · 3 comments
- Jun 22, 2026fix: upgrade vulnerable dependencies from security scan — NVIDIA/multi-storage-client0 reactions · 1 comment
- May 5, 2026fix: upgrade vulnerable dependencies from security scan — NVIDIA/multi-storage-client0 reactions · 1 comment
- Apr 14, 2026extract: NVIDIA AIStore → infrastructure — TheunsBarnardt/ai-fdl-kit0 reactions · 1 comment
- Mar 12, 2026Add support for S3-compatible storage with HTTP redirects (e.g., NVIDIA AIStore) — mlcommons/storage0 reactions · 5 comments
- Jan 16, 2026v4.1.24 and v4.1.23: Reader returns wrapped `io.EOF` — pierrec/lz40 reactions · 2 comments
- Jan 15, 2026logsDir other than "/var/log/ais" does not work — NVIDIA/ais-k8s0 reactions · 5 comments
- Jan 14, 2026redirection doesn't work in put request — apache/arrow-rs-object-store0 reactions · 3 comments
- Dec 16, 2025Add Native AIStore Storage Support — argonne-lcf/dlio_benchmark0 reactions · 2 comments
- Dec 3, 2025modernize and revive linters reports — golangci/golangci-lint0 reactions · 5 comments
- Jul 14, 2025panic: close of closed channel — golangci/golangci-lint0 reactions · 5 comments
- Apr 28, 2024services: Add NVIDIA/aistore support — apache/opendal0 reactions · 3 comments
- May 11, 2023Modify the resource limit: memory limit from 30Mi to 100Mi — NVIDIA/ais-k8s0 reactions · 1 comment
- Sep 16, 2022Failing AIStore CI — meta-pytorch/data0 reactions · 2 comments
- Jun 14, 2022AIStore Datapipes (AISFileListerIterDataPipe and AISFileLoaderIterDataPipe) — meta-pytorch/data0 reactions · 7 comments
- Feb 9, 2022[INTEGRATION] with AiStore — activeloopai/deeplake0 reactions
- Dec 23, 2021AIStore example added — activeloopai/examples0 reactions · 1 comment
- Dec 17, 2021AIStore — gaow0007/code-reading0 reactions
On Bluesky · 1
- Dec 14, 2025Never really enjoyed working with minio. Looks like nvidia has a higher performing alternative (also in go). Minio never supported erasure… — @taras.glek.net2 likes and reposts
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 28,693 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository5 other files it gives its agents.
- AGENTS.mdAGENTS.md
- cmd/cli/AGENTS.mdAGENTS.md
- cmd/ishard/AGENTS.mdAGENTS.md
- python/aistore/pytorch/AGENTS.mdAGENTS.md
- docs/llms.txtllms.txt
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

