CAPNPROTO(1)
π CAPNPROTO(1) β the capnp glow-up guide π
okay bestie, so this is the manual page for capnp, living in section 1 of the capnp User Manual. It's the compiler for Cap'n Proto data interchange format definition files. Grab a boba, we're doing this π§β¨
β¨ SYNOPSIS β¨
capnp [<options>] <command> [<args>]
capnp id
capnp [--help | --version]
πΈ DESCRIPTION πΈ
Bestie. This manual page documents the capnp command, but like... briefly. Just the highlights, the trailer, the vibe check.
It was written for the Debian distribution because the original program does not have a manual page. Not me filling in the gaps π
So what is capnp? It's a wrapper for various tools used to manipulate the Cap'n Proto data interchange format. Think of it like the group chat admin for a whole squad of tools:
- a definition file compiler π
- a C++ backend π
- a decoder for converting Cap'n Proto messages to text π¦
- a generator for Cap'n Proto definition IDs β
Periodt. That's the whole squad.
π OPTIONS π
The program follows the usual GNU command line syntax, with long options starting with two dashes (`-`). A summary of options is included below. Let's go:
-IDIR,--import-pathDIRβ AddDIRto the list of directories searched for non-relative imports (ones that start with a/). Slay, now it can find your stuff.--no-standard-importβ Do not add any default import paths; use only those specified by-I. Otherwise, typically/usr/includeand/usr/local/includeare added by default. So if you want full control, this is your moment, main character energy.--verboseβ Log informational messages tostderr; useful for debugging. It's giving tell me everything π--helpβ Show summary of options. Your little lifeline.--versionβ Show version of program. Iconic. Very demure, very mindful.
π COMMANDS π
π«Ά compile
Compile Cap'n Proto schema files & generate corresponding source code in one or more languages. This is the one that actually does the thing.
OPTIONS
-I<dir>,--import-path=<dir>β Add<dir>to the list of directories searched for non-relative imports (ones that start with a/).--no-standard-importβ Do not add any default import paths; use only those specified by-I. Otherwise, typically/usr/includeand/usr/local/includeare added by default.-olang[:dir],--output=lang[:dir]β Generate source code for language<lang>in directory<dir>(default: current directory).<lang>actually specifies a plugin to use. If<lang>is a simple word, the compiler for a plugin called'capnpc-<lang>'in$PATH. If<lang>is a file path containing slashes, it is interpreted as the exact plugin executable file name, and$PATHis not searched. Lowkey the most powerful flag here, no cap.--src-prefix=<prefix>β If a file specified for compilation starts with<prefix>, remove the prefix for the purpose of deciding the names of output files. For example, the following command:
capnp --src-prefix=foo/bar -oc++:corge foo/bar/baz/qux.capnp
would generate the files corge/baz/qux.capnp.{h,c++}. Ate. π
π¦ decode
Decodes one or more encoded Cap'n Proto messages as text. Messages are read from standard input and by default are expected to be in standard Cap'n Proto serialization format. It's literally the translator of the group chat.
OPTIONS
-I<dir>,--import-path=<dir>β Add<dir>to the list of directories searched for non-relative imports (ones that start with a/).-f,--flatβ Interpret the input as one large single-segment message rather than a stream in standard serialization format. One big chunk, no streaming, so real.--no-standard-importβ Do not add any default import paths; use only those specified by-I. Otherwise, typically/usr/includeand/usr/local/includeare added by default.-p,--packedβ Expect the input to be packed using standard Cap'n Proto packing, which deflates zero-valued bytes. Shrinking the zeros, we love a minimalist π--shortβ Print in short (non-pretty) format. Each message will be printed on one line, without using whitespace to improve readability. No frills, just facts.
π id
Generates a unique identifier for Cap'n Proto schema files. That's it. That's the whole command. Tiny but mighty, the way a single emoji carries an entire conversation π
π SEE ALSO π
More documentation about Cap'n Proto is available online at http://capnproto.org. Go read it, iykyk.
π AUTHOR π
Tom Lee <debian@tomlee.co> Wrote this manpage for the Debian system. Respect the OG π«‘
β COPYRIGHT β
Copyright Β© 2013 Tom Lee
This manual page was written for the Debian system (and may be used by others).
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.
On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.
bestie, legally speaking: keep the license text intact, it's not optional, no cap π
and that's a wrap on capnp from the capnp User Manual β this page came to you courtesy of source/version capnp dated 07/23/2026 (still filed under CAPNPROTO(1)), and honestly? iconic. go compile something gorgeous β¨π¦π
π¦ where this page comes from
- ubuntu stonking: capnproto 1.4.0-3build1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms