Download the PHP package papi-ai/ingest without Composer

On this page you can find all versions of the php package papi-ai/ingest. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package ingest

papi-ai/ingest

Deterministic repository ingestion for PapiAI: turn a codebase into the largest useful picture that fits a token budget.

Agent apps keep hand-rolling tree scans and file reads, which gives the model shallow context and gives you an unbounded token bill. This is that job done once: discover, filter, rank, and render, with nothing hidden from the reader.

Deterministic by definition. No model is called during ingestion. The same repository state and the same request always produce the same digest, which is what makes the fingerprint worth caching against.

Install

Usage

Depth

Depth What each file contributes
Depth::Tree Nothing. Paths only, the cheapest orientation
Depth::Api A symbol block: what it declares, extends, and reaches for
Depth::Full The whole file

Api is the level agent consumers usually want: the entire system stays legible for a fraction of Full's tokens. It needs a symbol extractor for the language, so install papi-ai/ingest-php-symbols and pass it in:

Asking for Api without an extractor throws. It will not quietly hand you a Tree and let you wonder where the symbols went.

Prioritising what survives the budget

The budget renders the tree first, then files in priority order, skipping any that do not fit so one huge file cannot starve everything below it. A prioritiser is how you say what matters right now:

Map plus heat: the whole shape of the system, with the parts you are working on rendered first.

Rendering

Call Budget used
toPrompt() The one the request carried, or everything if it carried none
toPromptWithin(int $budget) This one, overriding the request
toFullPrompt() None. Everything, whatever the request said

Whatever gets dropped is named in a trailer line, always. A prompt that quietly omits half a repository is worse than one that admits it, because the reader cannot tell the difference.

Discovery

Inside a git repository, discovery defers to git itself (git ls-files --cached --others --exclude-standard): tracked files plus untracked ones that are not ignored. That is faster than walking and exactly right about .gitignore, including nested ignore files and global excludes, which a hand-rolled matcher never quite is. Outside a repository, or with respectGitignore: false, it walks the directory and never follows symlinks.

vendor/, node_modules/, .git/, lock files, .env* and binaries are excluded by default. Binaries and oversized files still appear in the tree, with a note saying why they were not read.

Interchange

File blocks use gitingest's framing (a 48-character rule, then FILE: <path>), and the tree opens with Directory structure:, so digests are interchangeable with what people already paste into models.

Related packages

Package Adds
papi-ai/ingest-php-symbols Depth::Api for PHP, via nikic/php-parser
papi-ai/ingest-gitingest Remote repositories, via the gitingest CLI

License

MIT, Marcello Duarte


All versions of ingest with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
papi-ai/papi-core Version ^0.15
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package papi-ai/ingest contains the following files

Loading the files please wait ...