Skip to content

Architecture

cmd/rmn/main.go          Entry point (signal handling, factory, root command)
internal/api/             Redmine HTTP client + domain types
internal/commands/        Cobra command tree (root, auth, issue, project, user,
                          version, timeentry, membership, wiki, tracker, status, mcp)
internal/cmdutil/         Factory (dependency injection), IOStreams
internal/config/          XDG-compliant JSON config (~/.config/rmn/config.json)

rmn uses Cobra for the CLI framework and go-sdk for the MCP server implementation. The codebase follows a factory pattern for dependency injection, making all commands testable with mock HTTP servers.

Released under the MIT License.