<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Library on The Manticore Project</title><link>https://themanticoreproject.com/tags/library/</link><description>Recent content in Library on The Manticore Project</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Tue, 20 May 2025 10:00:00 +0000</lastBuildDate><atom:link href="https://themanticoreproject.com/tags/library/index.xml" rel="self" type="application/rss+xml"/><item><title>Go - Building CLI tools with goopts, a command-line argument parsing library</title><link>https://themanticoreproject.com/blog/goopts-command-line-parsing-library/</link><pubDate>Tue, 20 May 2025 10:00:00 +0000</pubDate><guid>https://themanticoreproject.com/blog/goopts-command-line-parsing-library/</guid><description>&lt;p>When I started building security tools in Go for The Manticore Project, I quickly ran into a recurring problem. Every tool needed argument parsing: authentication flags, LDAP connection settings, debug options, positional arguments for modes and subcommands. Go&amp;rsquo;s standard &lt;code>flag&lt;/code> package handles simple cases, but it does not support argument groups, subcommands, mutually exclusive options, or even required arguments.&lt;/p>
&lt;p>I looked at existing libraries. Some were too minimal, others tried to do too much and imposed heavy conventions on how you structure your code. None of them felt right for the kind of tools I was building: security tools with multiple modes (like &lt;code>audit&lt;/code>, &lt;code>add&lt;/code>, &lt;code>remove&lt;/code>), each with their own set of arguments, and common argument groups for authentication and LDAP settings.&lt;/p></description></item><item><title>Manticore v1.0.0: The beast awakens</title><link>https://themanticoreproject.com/blog/manticore-v1-0-0-the-beast-awakens/</link><pubDate>Tue, 13 May 2025 05:49:58 +0000</pubDate><guid>https://themanticoreproject.com/blog/manticore-v1-0-0-the-beast-awakens/</guid><description>&lt;p>Over the past while, building security tooling for The Manticore Project, I kept running into the same situation: each new tool needed the same low-level building blocks. LDAP connectivity and authentication, protocol structures, cryptography helpers, and the assorted primitives that sit underneath any serious offensive or defensive utility. Re-implementing these per tool is wasteful and error-prone, so I started consolidating them into a single, reusable Go library.&lt;/p>
&lt;p>That library is &lt;strong>Manticore&lt;/strong>, and this &lt;code>v1.0.0&lt;/code> release marks its first public release.&lt;/p></description></item></channel></rss>