{"id":25921870,"url":"https://github.com/amberpixels/aictx","last_synced_at":"2026-03-07T12:01:18.280Z","repository":{"id":278742162,"uuid":"936624847","full_name":"amberpixels/aictx","owner":"amberpixels","description":"Code-to-Text for AI Context Generator","archived":false,"fork":false,"pushed_at":"2025-05-05T15:32:10.000Z","size":85,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-20T13:52:22.470Z","etag":null,"topics":["ai","chatgpt","claude","codebase","context"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amberpixels.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-02-21T12:04:41.000Z","updated_at":"2025-05-05T15:32:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"9675d8ba-a6c6-4947-913b-de7c68605d42","html_url":"https://github.com/amberpixels/aictx","commit_stats":null,"previous_names":["amberpixels/aictx"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/amberpixels/aictx","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amberpixels%2Faictx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amberpixels%2Faictx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amberpixels%2Faictx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amberpixels%2Faictx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amberpixels","download_url":"https://codeload.github.com/amberpixels/aictx/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amberpixels%2Faictx/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30212485,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T09:02:10.694Z","status":"ssl_error","status_checked_at":"2026-03-07T09:02:08.429Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","chatgpt","claude","codebase","context"],"created_at":"2025-03-03T16:16:27.138Z","updated_at":"2026-03-07T12:01:18.256Z","avatar_url":"https://github.com/amberpixels.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n    AI Ctx\n\u003c/h1\u003e\n\n🤖 **aictx** is a powerful CLI tool that transforms your entire codebase into a single, AI-ready text file.\nPerfect for feeding context to large language models like ChatGPT, Claude, and more, it supports both local directories and remote Git repositories.\nWith flexible filtering options—including global and mode-specific include/exclude patterns—you control exactly which files are included,\ncreating a seamless narrative of your project.\n\n## Features\n\n- **📁 Local Directory Support**:\n  Processes given local directory and its subdirectories (if needed, including hidden content as well).\n\n- **🌐 Git Repository Support**:\n  Accepts a Git repository shorthand (e.g., `github.com/amberpixels/aictx`) to process its codebase.\n\n- **🗃️ Tree Mode**:\n  Displays a structured tree view of the input with a summary (total file count, cumulative size, and largest file size).\n\n- **📜 Source Mode**:\n  Outputs the contents of allowed source files with informative headers including file number and size.\n  Files exceeding a configurable size threshold are skipped.\n\n- **🛠️ Flexible Filtering**:\n  - Apply global and mode-specific glob patterns (supports comma-separated lists) to include or exclude files.\n  - Automatically respects `.gitignore` if exists (can be disabled).\n  - Automatically ignores common unwanted files (e.g., `vendor`, `Thumbs.db`, `__pycache__`, `node_modules`) (can be disabled).\n  - Automatically ignores hidden and/or binary files (can be disabled).\n  - Reads additional ignore patterns from a `.aictxignore` file in the input directory.\n  - Automatically excludes the output file (default `output.txt` or a user-specified file) from processing.\n\n## Installation\nEnsure you have [Go](https://golang.org/) installed.\n\n```bash\ngo install github.com/amberpixels/aictx@latest\n```\n\n## Usage and Options\n\n```bash\nUsage: aictx [\u003cinput-path\u003e] [flags]\n\nArguments:\n  [\u003cinput-path\u003e]    Input directory (or git repo URL) to process\n\nFlags:\n  -h, --help                    Show context-sensitive help.\n  -l, --local                   Treat inputPath arg as a local directory.\n                                If inputPath is '.' it is automatically makes\n                                local=true.\n  -i, --include=\"\"              Global include glob pattern (supports\n                                comma-separated list)\n  -x, --exclude=\"\"              Global exclude glob pattern (supports\n                                comma-separated list)\n      --source.disabled         Disable source mode\n      --source.include=\"\"       Include glob pattern specific for source mode.\n                                Global include is used if not specified.\n      --source.exclude=\"\"       Exclude glob pattern specific for source mode.\n                                Global exclude is used if not specified.\n      --source.threshold=0.1    Exclude sources for files \u003e= threshold (Mb)\n      --source.show-hidden      Show hidden files in source mode\n      --tree.disabled           Disable tree mode\n      --tree.include=\"\"         Include glob pattern specific for tree mode.\n                                Global include is used if not specified.\n      --tree.exclude=\"\"         Exclude glob pattern specific for tree mode.\n                                Global exclude is used if not specified.\n      --tree.show-hidden        Show hidden files in tree mode\n  -o, --out=\"output.txt\"        Output destination file (\"stdout\" for stdout)\n  -v, --verbose                 Verbose mode\n  -r, --raw                     Concatenate file contents in raw mode without\n                                headers or summary\n  -L, --list-core-ignores       List core ignore patterns and exit\n      --no-core-ignores         Disable core ignore patterns\n      --no-git-ignore           Disable respecting .gitignore file\n\n```\n\n## Examples\n\n- **Display Both Tree and Source views for a Current Local Directory**\n\n  ```bash\n  aictx\n  ```\n\n- **Display Both Tree and Source views for a Github repo**\n\n  ```bash\n  aictx amberpixels/aictx\n\n  # supported any type of github repo mention.\n  # as well as gitlab's repos.\n  aictx github.com/amberpixels/aictx\n  ```\n\n- **Include specific globs (for both Tree \u0026 Source mode) **\n\n  ```bash\n  aictx --i \"*.go,go.md\"\n  ```\n- **Process a Git Repository with a Custom Size Threshold**\n\n  ```bash\n  aictx github.com/amberpixels/aictx --source.threshold 0.2 --source.include=\"*.js\" --out=stdout\n  ```\n- **List Core Ignore Patterns**\n\n  ```bash\n  aictx --list-core-ignores\n  ```\n\n- **Include everything: hidden files (and core-ignored)**\n\n  ```bash\n  aictx --no-core-ignores --show-hidden\n  ```\n\n## Project Structure\n\n~~~text\nProject Tree [9 files, 16.05 MB total, max 16.01 MB] (* - for binary files)\n.\n├── build\n│   └── aictx *\n├── cmd\n│   └── aictx\n│       └── main.go\n├── internal\n│   ├── aictx\n│   │   ├── app.go\n│   │   ├── core_ignores.go\n│   │   ├── git.go\n│   │   ├── git_test.go\n│   │   └── helpers.go\n│   └── fsutils\n│       └── fsutils.go\n└── tools\n    └── readmegen.go\n~~~\n\n## Contributing\nContributions are welcome! Please fork the repository and submit pull requests for any enhancements, bug fixes, or suggestions.\n\n**Please Note:** The application is stable and ready-to-be used, but it is not currently covered by tests.\nAs a result, accepting new features may take longer than expected until we have at least some basic test coverage\nin place. We appreciate your patience and contributions as we work towards enhancing\nthe project's quality and reliability.\n\n## License\nThis project is licensed under the [MIT License](LICENSE).\n\nHappy coding! :heart:\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famberpixels%2Faictx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famberpixels%2Faictx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famberpixels%2Faictx/lists"}