Code&Chaos
The Builder’s Field Guide

A living glossary for the language of software, AI, agents, systems, and the humans building with them.

II.

Infrastructure & Tools

The machinery around the code: files, packages, APIs, terminals, environments, credentials, extensions, and the protocols that let systems and agents actually do things.

53 terms

File Beginner
Plain-English definition

One saved unit of code, text, configuration, media, or data.

More precise definition

A file is a named collection of data stored by a computer. Its extension often indicates its format or intended use.

Example

A TypeScript file named app.ts or a configuration file named package.json.

Commonly confused with

Folder, project

Common misconception

A file is not necessarily code. Images, logs, prompts, and settings are files too.

Folder / Directory Beginner
Plain-English definition

A container used to organize files and other folders.

More precise definition

A directory is part of the file system hierarchy and may contain files, subdirectories, or links.

Example

A src folder containing application source files.

Commonly confused with

File, repository

Common misconception

Folder is the common visual term; directory is the more technical term. They usually mean the same thing.

Path Beginner
Plain-English definition

The address that tells the computer where a file or folder is located.

More precise definition

A path identifies a location in a file system and may be absolute from the system root or relative to the current location.

Example

/projects/ember/src/index.ts

Commonly confused with

URL

Common misconception

A file path points to a local or mounted file-system location; a URL points to a network resource.

Project Beginner
Plain-English definition

The full body of work being built.

More precise definition

A software project may include source code, tests, assets, configuration, documentation, dependencies, and deployment setup.

Example

The Ember project contains the application, tool schemas, tests, and documentation.

Commonly confused with

Repository, codebase, product

Common misconception

A project is the work as a whole. A repository is one place where that work may be stored and tracked.

Codebase Beginner
Plain-English definition

All the source code that belongs to a project.

More precise definition

A codebase is the complete body of implementation code for a system, often spread across many files, modules, packages, or repositories.

Example

“Explore the codebase before changing the memory pipeline.”

Commonly confused with

Repository, project

Common misconception

A repository may contain documentation, assets, and configuration beyond the codebase itself.

Module Beginner
Plain-English definition

A focused unit of code that groups related behavior.

More precise definition

A module exposes selected functions, types, or values for use elsewhere while keeping internal details organized or hidden.

Example

A module that handles memory search or authentication.

Commonly confused with

Package, library

Common misconception

A module may be a single file or a larger logical unit depending on the language and project.

Package Beginner
Plain-English definition

A bundled unit of reusable code that can be installed or shared.

More precise definition

A package typically includes code, metadata, version information, and dependency declarations.

Example

Installing a package from npm.

Commonly confused with

Module, library

Common misconception

A package is a distribution unit. A library describes how the code is used.

Dependency Beginner
Plain-English definition

Outside code or a service that your project relies on.

More precise definition

Dependencies may be direct, transitive, runtime, development-only, internal, or external.

Example

A project depending on a validation library.

Commonly confused with

Library, package

Common misconception

Dependencies include more than installed packages. A task or service can also depend on another system.

Package Manager Beginner
Plain-English definition

A tool that installs, updates, and tracks software packages.

More precise definition

A package manager resolves package versions, records dependencies, and may run project scripts.

Example

npm, pnpm, yarn, or pip.

Commonly confused with

Package registry

Common misconception

The package manager is the tool. The registry is the service where packages are published and downloaded.

Manifest Intermediate
Plain-English definition

A file describing a project, package, or application.

More precise definition

A manifest commonly declares metadata, scripts, dependencies, permissions, entry points, or build settings.

Example

package.json in a JavaScript or TypeScript project.

Commonly confused with

Lockfile, configuration file

Common misconception

A manifest describes what the project requests or declares; it may not record the exact installed versions.

Lockfile Intermediate
Plain-English definition

A file that records the exact package versions installed for a project.

More precise definition

A lockfile makes dependency installation more reproducible by pinning the resolved dependency tree.

Example

package-lock.json, pnpm-lock.yaml, or yarn.lock.

Commonly confused with

Manifest

Common misconception

The manifest may allow version ranges; the lockfile records the exact resolved versions.

Library Beginner
Plain-English definition

Reusable code that your application calls to perform specific tasks.

More precise definition

A library provides functions, classes, types, or utilities without usually controlling the overall structure of the application.

Example

A date library used to format timestamps.

Commonly confused with

Framework, package, SDK

Common misconception

A library and a package may overlap, but they describe different aspects: usage versus distribution.

Framework Beginner
Plain-English definition

A larger structure that shapes how an application is built.

More precise definition

A framework provides conventions, lifecycle, architecture, and integration points, and often calls your code at defined moments.

Example

A web framework controlling routing, rendering, and application structure.

Commonly confused with

Library

Common misconception

A common shorthand is: you call a library; a framework calls your code.

SDK — Software Development Kit Beginner
Plain-English definition

A package of tools and code that helps developers build with a platform or service.

More precise definition

An SDK may include libraries, types, examples, documentation, authentication helpers, command-line tools, and testing utilities.

Example

An image-generation SDK that wraps API calls into reusable functions.

Commonly confused with

API, library, CLI

Common misconception

An API is the interface. An SDK is a developer toolkit built around that interface.

API — Application Programming Interface Beginner
Plain-English definition

A defined way for one piece of software to communicate with another.

More precise definition

An API specifies available operations, accepted inputs, returned outputs, errors, authentication, and behavioral contracts.

Example

An app sending a request to a model provider and receiving generated text.

Commonly confused with

SDK, endpoint, application

Common misconception

An API is not necessarily a website or user interface. It is an interface for software.

Endpoint Beginner
Plain-English definition

One specific operation or address exposed by an API.

More precise definition

An endpoint is the callable location and behavior associated with a particular API function.

Example

POST /v1/messages

Commonly confused with

API

Common misconception

The API is the whole interface; an endpoint is one route or operation within it.

Request Beginner
Plain-English definition

Data sent to a service asking it to do something.

More precise definition

A request may include a method, address, headers, authentication, parameters, and a body or payload.

Example

Sending a search query to an API.

Commonly confused with

Response

Common misconception

A request is not only the main data. Metadata and authentication may travel with it too.

Response Beginner
Plain-English definition

The data or result returned after a request.

More precise definition

A response may include a status code, headers, body, errors, metadata, and pagination information.

Example

An API returning matching memory nodes.

Commonly confused with

Request

Common misconception

A response can represent success, failure, partial success, or an empty result.

Payload Beginner
Plain-English definition

The main data carried by a request, response, message, or event.

More precise definition

The payload is the meaningful content being transferred, separate from transport metadata such as routing or headers.

Example

The JSON object sent to an Ember tool.

Commonly confused with

Schema, request body

Common misconception

Payload describes the data being carried. A schema describes the shape that data should follow.

HTTP Method Beginner
Plain-English definition

A verb that describes what kind of action an HTTP request is asking for.

More precise definition

Common methods include GET, POST, PUT, PATCH, and DELETE.

Example

GET retrieves data; POST often creates or triggers an operation.

Commonly confused with

Endpoint

Common misconception

The method and endpoint work together. The same path may behave differently under different methods.

Status Code Beginner
Plain-English definition

A number indicating the outcome of an HTTP request.

More precise definition

HTTP status codes are grouped by class: 2xx success, 3xx redirection, 4xx client error, and 5xx server error.

Example

200 means success, 404 means not found, and 500 means server error.

Commonly confused with

Application error code

Common misconception

A 200 response can still contain bad or incomplete application data. Transport success is not the same as business success.

Client Beginner
Plain-English definition

Software that requests data or services from another system.

More precise definition

A client initiates communication with a server or service and may be a browser, app, SDK, agent host, or command-line tool.

Example

A web app calling an API.

Commonly confused with

User, server

Common misconception

Client can mean software, not only a paying human customer.

Server Beginner
Plain-English definition

Software or a machine that receives requests and provides services or data.

More precise definition

A server listens for incoming communication, runs logic, accesses resources, and returns results.

Example

An API server handling search requests.

Commonly confused with

Backend, cloud

Common misconception

Server can describe a role, a running program, or a physical or virtual machine.

Local Beginner
Plain-English definition

Running or stored on your own device or immediate development environment.

More precise definition

Local resources are available without depending on a remote hosted system, though they may still use local networking or containers.

Example

Running the app on your laptop.

Commonly confused with

Remote, production

Common misconception

Local does not always mean offline.

Remote Beginner
Plain-English definition

Running or stored somewhere other than your current device.

More precise definition

Remote systems may include cloud servers, shared repositories, hosted databases, or external APIs.

Example

Pushing code to a remote Git repository.

Commonly confused with

Cloud

Common misconception

Remote means elsewhere. It does not necessarily mean a public cloud provider.

Environment Beginner
Plain-English definition

The context and configuration in which software runs.

More precise definition

An environment includes code, variables, dependencies, services, permissions, data, and infrastructure.

Example

Development, staging, test, and production environments.

Commonly confused with

Runtime

Common misconception

Two environments can run the same code and still behave differently because their configuration or dependencies differ.

Runtime Beginner
Plain-English definition

The environment or phase where code is actually executing.

More precise definition

Runtime can refer to the execution engine, available libraries, operating context, and behavior while the program is running.

Example

Node.js running compiled JavaScript.

Commonly confused with

Compile time, environment

Common misconception

A problem can pass typechecking and still fail at runtime.

Process Intermediate
Plain-English definition

One running instance of a program.

More precise definition

A process has its own memory space, resources, state, and operating-system identity.

Example

Starting a development server creates a running process.

Commonly confused with

Thread, service

Common misconception

The same program can have multiple processes running at once.

Terminal Beginner
Plain-English definition

A text-based window used to interact with a computer by typing commands.

More precise definition

A terminal application provides access to a shell, which interprets commands and starts programs.

Example

Opening a terminal and running npm test.

Commonly confused with

Shell, command line, CLI

Common misconception

The terminal is the window or application; the shell is the program interpreting your commands.

Shell Beginner
Plain-English definition

The program that reads and executes commands typed in a terminal.

More precise definition

A shell provides command syntax, variables, scripting, process control, and access to operating-system tools.

Example

Bash, Zsh, PowerShell, or fish.

Commonly confused with

Terminal, CLI

Common misconception

The terminal displays the session; the shell interprets what you type.

Command Line Beginner
Plain-English definition

The text-based interface where commands are entered.

More precise definition

The command line is the interaction style used through a shell rather than a graphical interface.

Example

Typing git status and pressing Enter.

Commonly confused with

Terminal, CLI

Common misconception

The command line is the interface. A CLI is a specific program designed for that interface.

CLI — Command-Line Interface Beginner
Plain-English definition

A tool operated by typing commands.

More precise definition

A CLI exposes commands, arguments, flags, help text, and output through a shell.

Example

The Git CLI or an application’s own deployment CLI.

Commonly confused with

Terminal, shell

Common misconception

The CLI is the tool. The terminal is where you run it.

Command Beginner
Plain-English definition

An instruction typed into a command-line interface.

More precise definition

A command usually invokes a program or subcommand and may include arguments and flags.

Example

npm test

Commonly confused with

Script

Common misconception

A command can run a script, but the command itself is not necessarily the script.

Flag / Option Beginner
Plain-English definition

Extra command-line input that changes how a command behaves.

More precise definition

Flags are usually named switches such as --watch, --force, or -v and may be boolean or accept values.

Example

npm test --watch

Commonly confused with

Argument

Common misconception

Arguments often provide the main values; flags modify behavior or configuration.

IDE — Integrated Development Environment Beginner
Plain-English definition

An application designed for writing, navigating, running, and debugging code.

More precise definition

An IDE combines editing, code intelligence, project navigation, debugging, terminals, version-control integration, and extensions.

Example

Visual Studio Code, WebStorm, or IntelliJ IDEA.

Commonly confused with

Code editor

Common misconception

Some tools sit between editor and full IDE. The boundary is practical, not sacred.

Code Editor Beginner
Plain-English definition

Software used to write and edit code.

More precise definition

A code editor may provide syntax highlighting, autocomplete, extensions, and file navigation without the full integrated tooling of an IDE.

Example

A lightweight editor used to modify TypeScript files.

Commonly confused with

IDE, text editor

Common misconception

Many modern editors can gain IDE-like features through plugins.

Plugin Beginner
Plain-English definition

An add-on that extends the capabilities of a host application.

More precise definition

A plugin runs within or alongside a host system and uses that host’s extension points.

Example

An IDE plugin that adds code analysis.

Commonly confused with

Skill, library, MCP server

Common misconception

A plugin depends on a host application. It is not automatically a standalone service.

Skill Beginner
Plain-English definition

A packaged set of instructions or procedures that teaches an agent how to perform a task.

More precise definition

A skill may include prompts, examples, policies, tool-use guidance, templates, scripts, or reference files. The exact format depends on the platform.

Example

A skill describing how to create and validate a PDF.

Commonly confused with

Plugin, tool, MCP server

Common misconception

Skill is not a universal standard term. Different platforms package and execute skills differently.

Tool Beginner
Plain-English definition

A capability that software or an agent can invoke to perform an action.

More precise definition

A tool has a defined interface, accepted inputs, behavior, permissions, and returned output.

Example

A search tool, calendar tool, file-writing tool, or database query tool.

Commonly confused with

Skill, plugin, agent

Common misconception

A tool performs an operation. A skill teaches the agent how or when to use capabilities well.

Tool Schema Intermediate
Plain-English definition

The formal description of how a tool must be called.

More precise definition

A tool schema defines field names, types, allowed values, required inputs, optional inputs, and sometimes validation rules.

Example

A search tool requiring query: string and allowing limit?: number.

Commonly confused with

Payload, API documentation

Common misconception

The schema describes the contract; the payload is one actual call that follows it.

MCP — Model Context Protocol Beginner
Plain-English definition

A standard way for AI applications to connect to external tools and resources.

More precise definition

MCP defines how hosts, clients, and servers expose and consume tools, resources, prompts, and related context.

Example

An AI coding host connecting to a project-search MCP server.

Commonly confused with

Plugin, API, skill

Common misconception

MCP is a protocol, not a single product or tool.

MCP Server Intermediate
Plain-English definition

A service that exposes tools or resources through MCP.

More precise definition

An MCP server advertises capabilities and handles structured calls from compatible clients or hosts.

Example

A server exposing project files, database queries, or custom internal tools.

Commonly confused with

MCP client, plugin

Common misconception

The server provides capabilities. It does not necessarily contain the AI model.

MCP Client Intermediate
Plain-English definition

Software that connects to and uses an MCP server.

More precise definition

The client discovers capabilities, sends structured calls, and receives results through the MCP connection.

Example

An AI desktop application connecting to an MCP server.

Commonly confused with

MCP server, host

Common misconception

The client consumes capabilities; the server exposes them.

Webhook Intermediate
Plain-English definition

An automatic message sent to another system when an event happens.

More precise definition

A webhook is an event-driven HTTP callback from one service to a configured endpoint.

Example

A payment provider notifying your app that a payment succeeded.

Commonly confused with

API request, polling

Common misconception

With a webhook, the source pushes the event. With polling, the receiver repeatedly checks.

Authentication — AuthN Beginner
Plain-English definition

Proving who you are.

More precise definition

Authentication verifies identity using passwords, tokens, keys, biometrics, sessions, or external identity providers.

Example

Signing in with an email and password.

Commonly confused with

Authorization

Common misconception

Authentication answers “Who are you?” It does not decide everything you are allowed to do.

Authorization — AuthZ Beginner
Plain-English definition

Deciding what an authenticated identity is allowed to do.

More precise definition

Authorization evaluates permissions, roles, ownership, policies, or scopes after identity is established.

Example

Allowing an admin to delete a user while denying a regular member.

Commonly confused with

Authentication

Common misconception

Authentication proves identity. Authorization grants or denies access.

Token Beginner
Plain-English definition

A value used to represent identity, access, state, or permission.

More precise definition

In infrastructure, tokens may authenticate requests, represent sessions, or grant scoped access. This is different from an LLM text token.

Example

A bearer token sent in an API request.

Commonly confused with

API key, LLM token

Common misconception

The word token has multiple meanings. Context tells you whether it means text units or access credentials.

API Key Beginner
Plain-English definition

A secret value used to identify and authenticate access to an API.

More precise definition

An API key is issued by a service and included in requests so usage can be authorized, tracked, limited, or billed.

Example

A provider key stored in an environment variable.

Commonly confused with

Token, password

Common misconception

API keys should not be committed into source code or exposed in client-side applications.

Secret Beginner
Plain-English definition

Sensitive information that must be protected.

More precise definition

Secrets include API keys, passwords, private keys, tokens, and connection credentials.

Example

A database password stored in a secret manager.

Commonly confused with

Environment variable

Common misconception

An environment variable is a storage mechanism. Whether its value is secret depends on what it contains.

Environment Variable — Env Var Beginner
Plain-English definition

A named configuration value provided outside the source code.

More precise definition

Environment variables configure applications at runtime without hard-coding settings into the codebase.

Example

API_BASE_URL or DATABASE_URL.

Commonly confused with

Secret, configuration file

Common misconception

Environment variables can hold secrets, but they can also hold ordinary configuration.

Rate Limit Intermediate
Plain-English definition

A restriction on how many requests or actions are allowed within a period.

More precise definition

Rate limits protect services from overload, abuse, and uncontrolled cost.

Example

100 requests per minute.

Commonly confused with

Quota

Common misconception

A rate limit controls speed. A quota usually controls total allowance over a larger period.

Pagination Intermediate
Plain-English definition

Splitting a large result set into smaller pages.

More precise definition

Pagination lets clients retrieve manageable portions of data using page numbers, offsets, or cursors.

Example

Returning the first 50 messages plus a token for the next page.

Commonly confused with

Streaming

Common misconception

Pagination divides a finite result set. Streaming delivers data progressively as it becomes available.

Cursor Intermediate
Plain-English definition

A marker used to continue retrieving results from a specific point.

More precise definition

Cursor-based pagination uses an opaque or structured position token instead of a numeric page offset.

Example

Passing next_cursor to fetch the next batch of records.

Commonly confused with

Offset

Common misconception

A cursor is usually not a row number. It represents a continuation position understood by the service.

No terms match that search yet. Try a broader word.