Core API Reference
Pack
write_pack(input_dir, output_dir, include_patterns=None, exclude_patterns=None, no_gitignore=False, no_default_patterns=False, include_hidden=False, verbose=False, quiet=False, remove_empty_lines=False, fast_pdf=False)
Scans an input directory, parses supported files, chunks them, and generates a context pack.
This acts as the main orchestration engine for AgentPack, coordinating the Scanner, Parsers,
and Chunker to produce a finalized manifest.yml and structured context directory.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input_dir
|
str
|
The root directory containing raw documents to scan. |
required |
output_dir
|
str
|
The destination directory where the pack will be written. |
required |
include_patterns
|
List[str]
|
Glob patterns of files to exclusively include. |
None
|
exclude_patterns
|
List[str]
|
Glob patterns of files to exclude. |
None
|
no_gitignore
|
bool
|
If True, ignores |
False
|
no_default_patterns
|
bool
|
If True, disables built-in ignore rules (e.g. |
False
|
include_hidden
|
bool
|
If True, includes hidden files and directories. |
False
|
verbose
|
bool
|
If True, enables detailed progress logging. |
False
|
quiet
|
bool
|
If True, suppresses all non-error output. |
False
|
remove_empty_lines
|
bool
|
If True, strips empty lines from parsed text/markdown blocks to save tokens. |
False
|
Source code in src/agentpack/pack.py
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 | |
Retrieve
Chunker
Models
DocumentBlock
Bases: BaseModel
Represents a unified contiguous block of semantic information from a document.
Source code in src/agentpack/models.py
12 13 14 15 16 17 18 19 20 | |
ExtractionWarning
Bases: BaseModel
Represents a warning encountered during parsing (e.g. unreadable PDF page).
Source code in src/agentpack/models.py
4 5 6 7 8 9 | |
SourceDocument
Bases: BaseModel
Represents a fully parsed document normalized into the Canonical Document Model.
Source code in src/agentpack/models.py
23 24 25 26 27 28 29 30 | |
Audit & Validate
audit_pack(pack_dir)
Generates an audit report for an agentpack output directory.
Source code in src/agentpack/audit.py
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | |
validate_pack(pack_dir)
Validates the integrity of an agentpack output directory.
Source code in src/agentpack/validate.py
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | |
Scanner
scan_directory(directory, include_hidden=False, no_gitignore=False, no_default_patterns=False, include_patterns=None, exclude_patterns=None)
Recursively scans a directory and returns a list of supported files, respecting ignore rules.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
directory
|
str
|
The root directory to scan. |
required |
include_hidden
|
bool
|
If True, includes hidden files and directories. |
False
|
no_gitignore
|
bool
|
If True, skips loading rules from |
False
|
no_default_patterns
|
bool
|
If True, skips the built-in ignore lists ( |
False
|
include_patterns
|
List[str]
|
If provided, only files matching these gitignore-style patterns are returned. |
None
|
exclude_patterns
|
List[str]
|
If provided, files matching these gitignore-style patterns are skipped. |
None
|
Returns:
| Type | Description |
|---|---|
List[Path]
|
List[Path]: A list of absolute or relative Path objects for files that should be packed. |
Source code in src/agentpack/scanner.py
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | |