CHIPASS(1)

πŸ“¦
version 2026.09.0 Β· 2 versions
, in arch rolling

🌸 CHIPASS(1) · part 1 🌸

bestie, real talk: the part-1 chunk you sent is not the CHIPASS(1) manual body. It’s literally the HTML <head> of a keepassxc(1) export: <!DOCTYPE html>, <meta charset="UTF‐8">, <meta http‐equiv="X‐UA‐Compatible" content="IE=edge">, <meta name="viewport" content="width=device-width, initial-scale=1.0">, <meta name="generator" content="Asciidoctor 2.0.26">, <meta name="author" content="KeePassXC Team">, <title>keepassxc(1)</title>, a Google Fonts <link>, and the Asciidoctor default stylesheet.

There’s no CHIPASS(1) prose in this part β€” no NAME, SYNOPSIS, DESCRIPTION, OPTIONS, files, environment variables, exit statuses, signals, errors, examples, warnings, bug notes, author/copyright/license lines, or SEE ALSO. Also the header says keepassxc(1) and KeePassXC Team, not CHIPASS(1), so that’s a whole mismatch too.

I’m not gonna invent flags or behaviour β€” that would be fake manpage lore, and we do not do that here. Send the actual CHIPASS(1) body for part 1 and I’ll give it the full group-chat glow-up with every single detail kept exactly. πŸ’…βœ¨

okay so we are STILL inside <style> and it is still going 😭 bestie this stylesheet has main character energy and it refuses to end. we're past the anchors now, we're doing footers and details and honestly? slay for her. let's keep scrolling together 🫢


first up, the absolute vibes of the bottom of the page and the big content box:

#footer{max-width:none;background:rgba(0,0,0,.8);padding:1.25em}
#footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}
#content{margin-bottom:.625em}

and then the min-width:768px media query, which is where the anchor-link lore lives:

@media screen and (min-width:768px){#content{margin-bottom:1.25em} #content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400} #content h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:" 0A7";font-size:.85em;display:block;padding-top:.1em} #content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible} #content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none} #content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221}}

look at the size of her. that's a paragraph of selectors. ngl she ate πŸ’… and #ba3925 β†’ #a53221 on hover is such a subtle little glow-up, we love a color story.


πŸŽ€ details, summary, and the little triangle thing

details,.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
details{margin-left:1.25rem}
details>summary{cursor:pointer;display:block;position:relative;line-height:1.6;margin-bottom:.625rem;outline:none;-webkit-tap-highlight-color:transparent}
details>summary::-webkit-details-marker{display:none}
details>summary::before{content:"";border:solid transparent;border-left:solid;border-width:.3em 0 .3em .5em;position:absolute;top:.5em;left:-1.25rem;transform:translateX(15%)}
details[open]>summary::before{border:solid transparent;border-top:solid;border-width:.5em .3em 0;transform:translateY(15%)}
details>summary::after{content:"";width:1.25rem;height:1em;position:absolute;top:.3em;left:-1.25rem}
table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}

the details[open]>summary::before is literally the little triangle rotating when you open a disclosure. she's a gymnast. 🀸 and yes, -webkit-tap-highlight-color:transparent is there, bestie, we're respecting the phone tap.


πŸ’œ code blocks, line numbers, and the prettyprint situation

@media screen and (min-width:768px){.literalblock pre,.listingblock>.content>pre{font-size:.90625em}}
@media screen and (min-width:1280px){.literalblock pre,.listingblock>.content>pre{font-size:1em}}
pre.prettyprint .linenums{line-height:1.45;margin-left:2em}
pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}
pre.prettyprint li code[data-lang]::before{opacity:1}
pre.prettyprint li:not(:first-child) code[data-lang]::before{display:none}
table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}
table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}
table.linenotable td.code{padding-left:.75em}
table.linenotable td.linenos,pre.pygments .linenos{border-right:1px solid;opacity:.35;padding-right:.5em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
pre.pygments span.linenos{display:inline-block;margin-right:.75em}

two breakpoints, .90625em and 1em, and the whole user-select:none squad on the line numbers so nobody accidentally copies a line number into their code. thank u queen, that's public service πŸ”₯


🌈 tables tables tables (and their frames and stripes)

p.tableblock:last-child{margin-bottom:0}
td.tableblock>.content{margin-bottom:1.25em;word-wrap:anywhere}
td.tableblock>.content>:last-child{margin-bottom:-1.25em}
table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
table.grid-all>*>tr>*{border-width:1px}
table.grid-cols>*>tr>*{border-width:0 1px}
table.grid-rows>*>tr>*{border-width:1px 0}
table.frame-all{border-width:1px}
table.frame-ends{border-width:1px 0}
table.frame-sides{border-width:0 1px}
table.frame-none>colgroup+*>:first-child>*,table.frame-sides>colgroup+*>:first-child>*{border-top-width:0}
table.frame-none>:last-child>:last-child>*,table.frame-sides>:last-child>:last-child>*{border-bottom-width:0}
table.frame-none>*>tr>:first-child,table.frame-ends>*>tr>:first-child{border-left-width:0}
table.frame-none>*>tr>:last-child,table.frame-ends>*>tr>:last-child{border-right-width:0}
table.stripes-all>*>tr,table.stripes-odd>*>tr:nth-of-type(odd),table.stripes-even>*>tr:nth-of-type(even),table.stripes-hover>*>tr:hover{background:#f8f8f7}
th.halign-left,td.halign-left{text-align:left}
th.halign-right,td.halign-right{text-align:right}
th.halign-center,td.halign-center{text-align:center}
th.valign-top,td.valign-top{vertical-align:top}
th.valign-bottom,td.valign-bottom{vertical-align:bottom}
th.valign-middle,td.valign-middle{vertical-align:middle}
table thead th,table tfoot th{font-weight:bold}
tbody tr th{background:#f7f8f7}
tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold}
p.tableblock>code:only-child{background:none;padding:0}
p.tableblock{font-size:1em}

grid-all, grid-cols, grid-rows, frame-all, frame-ends, frame-sides, frame-none, stripes-all, stripes-odd, stripes-even, stripes-hover, halign-left/right/center, valign-top/bottom/middle β€” that's the whole lineup bestie, nothing got skipped, we are thorough here πŸ‘‘


🧚 lists!!! every single list mode

ol{margin-left:1.75em}
ul li ol{margin-left:1.5em}
dl dd{margin-left:1.125em}
dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em}
ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none}
ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em}
ul.unstyled,ol.unstyled{margin-left:0}
li>p:empty:only-child::before{content:"";display:inline-block}
ul.checklist>li>p:first-child{margin-left:-1em}
ul.checklist>li>p:first-child>.fa-square-o:first-child,ul.checklist>li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}
ul.checklist>li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}
ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}
ul.inline>li{margin-left:1.25em}
ol.arabic{list-style-type:decimal}
ol.decimal{list-style-type:decimal-leading-zero}
ol.loweralpha{list-style-type:lower-alpha}
ol.upperalpha{list-style-type:upper-alpha}
ol.lowerroman{list-style-type:lower-roman}
ol.upperroman{list-style-type:upper-roman}
ol.lowergreek{list-style-type:lower-greek}

okay the numbered-list buffet is iconic β€” arabic, decimal, loweralpha, upperalpha, lowerroman, upperroman, lowergreek. pick your fighter βš”οΈ and checklists with input[type=checkbox]?? obsessed, she does tasks.


🫧 description lists, images, and the whole footnote saga

td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
td.hdlist1{font-weight:bold;padding-bottom:1.25em}
td.hdlist2{word-wrap:anywhere}
a.image{text-decoration:none;display:inline-block}
a.image object{pointer-events:none}
sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
sup.footnote a,sup.footnoteref a{text-decoration:none}
sup.footnote a:active,sup.footnoteref a:active,#footnotes .footnote a:first-of-type:active{text-decoration:underline}
#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}
#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}
#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em}
#footnotes .footnote:last-of-type{margin-bottom:0}
#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}

footnotes get their own tiny <hr> at width:20% with min-width:6.25em and a 1px 0 0 border β€” a delicate little divider, we stan πŸŽ€ and a.image object{pointer-events:none} means you cannot click-drag the thing. no cap, she's protected.


⭐ the odds and ends (unbreakable, icons, conums, typography)

div.unbreakable{page-break-inside:avoid}
span.icon>.fa{cursor:default}
a span.icon>.fa{cursor:inherit}
pre .conum[data-value]{position:relative;top:-.125em}
b.conum *{color:inherit!important}
dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility}
h1,h2,p,td.content,span.alt,summary{letter-spacing:-.01em}
p strong,td.content strong,div.footnote strong{letter-spacing:-.005em}
p,blockquote,dt,td.content,td.hdlist1,span.alt,summary{font-size:1.0625rem}
p{margin-bottom:1.25rem}
@page{margin:1.25cm .75cm}

text-rendering:optimizeLegibility, letter-spacing:-.01em, -.005em for the bold stuff, 1.0625rem body size β€” this is the glow-up era of the typography bestie ✨ she cares about kerning. we love a detail-oriented queen.


πŸ’€ the print stylesheet (final boss of @media print)

@media print{*{box-shadow:none!important;text-shadow:none!important} html{font-size:80%} a{color:inherit!important;text-decoration:underline!important} a.bare,a[hrefˆ="#"],a[hrefˆ="mailto:"]{text-decoration:none!important} a[hrefˆ="http:"]:not(.bare)::after,a[hrefˆ="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em} abbr[title]{border-bottom:1px dotted} abbr[title]::after{content:" (" attr(title) ")"} pre,blockquote,tr,img,object,svg{page-break-inside:avoid} thead{display:table-header-group} svg{max-width:100%} p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3} h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid} #header,#content,#footnotes,#footer{max-width:none} #toc,.sidebarblock,.exampleblock>.content{background:none!important} #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important} body.book #header{text-align:center} body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em} body.book #header .details{border:0!important;display:block;padding:0!important} body.book #header .details span:first-child{margin-left:0!important} body.book #header .details br{display:block} body.book #header .details br+span::before{content:none!important} body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important} body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always} #footer{padding:0 .9375em}}

orphans:3;widows:3 β€” she's protecting the lonely lines of text on printed pages 😭 that's literally so thoughtful. and attr(href) means the URL gets printed in parentheses after links, so paper readers aren't left hanging. queen behavior, fr fr.

then the last two media queries to close her out:

@media amzn-kf8,print{#header>h1:first-child{margin-top:1.25rem} #footer{background:none} #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}
@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}}

and that's it β€” she's done. πŸŽ‰


🌸 and NOW the actual markup starts (finally)

</style>
</head>
<body class="manpage">
<div id="header">
<h1>keepassxc(1) Manual Page</h1>
<h2 id="_name">NAME</h2>
<div class="sectionbody">
<p>keepassxc - a modern open-source password manager</p>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_synopsis">SYNOPSIS</h2>
<div class="sectionbody">
<div class="paragraph">
<p><strong>keepassxc</strong> [<em>options</em>] [<em>filename(s)</em>]</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_description">DESCRIPTION</h2>
<div class="sectionbody">
<div class="paragraph">
<p><strong>ChiPass</strong> is a free/open-source password manager or safe which helps you to manage your passwords in a secure way. The complete database is always encrypted with the industry-standard AES (alias Rijndael) encryption algorithm using a 256 bit key. ChiPass uses a database format that is compatible with KeePass Password Safe. Your wallet works offline and requires no Internet connection.</p>
</div>

okay bestie, deep breath, because now it's the real deal πŸ’–


πŸ‘‘ NAME

keepassxc β€” a modern open-source password manager

(yes it says keepassxc right there in the header and in the NAME line, and yes the description below says ChiPass β€” that's literally what it says, i'm not touching it πŸ™ˆ)


⭐ SYNOPSIS

keepassxc [options] [filename(s)]

so it's the program name, then options if you want them, then filename(s) β€” plural, bestie, you can hand her more than one file. 🫢


πŸ’œ DESCRIPTION

okay so ChiPass is a free/open-source password manager β€” a safe, basically β€” and her whole job is helping you manage your passwords in a secure way. πŸ’…

the complete database is always encrypted, every single time, with the industry-standard AES (alias Rijndael) encryption algorithm using a 256 bit key. yes, 256 bit. big number, big slay πŸ”₯ and it's AES, also known as Rijndael, so if you see either name, same icon, don't get confused.

ChiPass uses a database format that's compatible with KeePass Password Safe πŸŽ€ so your stuff isn't locked in some weird proprietary box β€” she speaks the format.

and the best part? your wallet works offline and requires no Internet connection. literally no wifi needed, no connection, nothing. she's self-sufficient, she's independent, she's main character energy πŸ‘‘βœ¨

✨ OPTIONS ✨

okay bestie, here's the whole flag menu β€” every single one, no skipping πŸ’…

  • -h, --help β€” displays this help. your "wait what was that flag again" bestie 🫢
  • -v, --version β€” displays version information. for when you need to know exactly which era of ChiPass you're living in ✨
  • --config <config> β€” path to a custom config file. you point, it reads πŸ“
  • --keyfile <keyfile> β€” key file of the database. yes, an actual file acting as your key, iconique πŸ”‘
  • --pw-stdin β€” read password of the database from stdin. pipe it in, don't type it in, your shoulders will thank you πŸ’œ
  • --minimized β€” starts ChiPass minimized to the system tray. lowkey, unobtrusive, doing its thing in the corner πŸŽ€
  • --debug-info β€” displays debugging information. for when something's giving unhinged and you need the receipts πŸ’€

πŸ“ NOTES πŸ“

the lore, the links, the whole vibe check 🌈


🫢 AUTHOR 🫢

This manual page was originally written by Janek Bevendorff <janek@jbev.net>. giving credit where credit is due, periodt πŸ’–


πŸ› REPORTING BUGS πŸ›

Bugs and feature requests can be reported on Codeberg at https://codeberg.org/ChiPass/ChiPass/issues.

so if something is acting up, don't suffer in silence β€” drop it there 😭✨


Copyright (C) 2016-2020 KeePassXC Team <team@keepassxc.org>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License, either version 2 or version 3. There is NO WARRANTY, to the extent permitted by law.

that "NO WARRANTY" is in all caps for a reason bestie β€” it's free software, not a promise πŸ’€

πŸ‘€ SEE ALSO πŸ‘€

keepassxc-cli(1) β€” the CLI sibling, iykyk πŸ¦‹


and that's the whole page, bestie! 🌸 this is Version 2026.09.0, last updated 2026-09-11 19:12:11 UTC. go forth, manage those passwords, and remember: encrypted with AES-256, offline, no internet required β€” main character password manager energy only πŸ‘‘πŸ’…βœ¨

πŸ“¦ where this page comes from