flagon-io/hello

public

Greets people from the command line. The sample repository for g1t.

Plans

The outcome

Get the repository ready for outside contributors. It needs a CONTRIBUTING.md that says how to build, test and propose a change; a CHANGELOG.md in Keep a Changelog format with an Unreleased section listing the --shout, --version and --times flags; an .editorconfig that matches how the Rust and Markdown files are already formatted; and a LICENSE file with the MIT license text. These are separate files and can be done independently.

Asked for by syntaqx

What was opened

4 issues, 4 that can start at once

The four files are independent and touch no shared code, so each becomes its own issue with no dependencies and all can run in parallel. Each issue is a single new file.

  1. 1

    Starts at oncecargo buildcargo testtest -f CONTRIBUTING.md

    CONTRIBUTING.md

    What the agent will be told

    Create CONTRIBUTING.md at the repo root for outside contributors. The crate is hello (Rust 2021 edition, see Cargo.toml), with logic in src/lib.rs (parse_args), entry point src/main.rs, and integration tests in tests/cli.rs.

    Cover:

    • Build: cargo build, and running with cargo run -- --shout Ada.
    • Test: cargo test (the README's Develop section uses it).
    • Propose a change: fork, branch, make a focused change with tests, make sure cargo test passes, update README usage when flags change, add an entry under Unreleased in CHANGELOG.md, open a pull request describing what and why.

    Only state commands that actually work; verify them by running them. Do not modify other files. Keep formatting consistent with README.md (ATX headings, fenced sh code blocks).

  2. 2

    Starts at oncegrep -q '## \[Unreleased\]' CHANGELOG.mdgrep -q -e '--shout' CHANGELOG.md && grep -q -e '--version' CHANGELOG.md && grep -q -e '--times' CHANGELOG.md

    CHANGELOG.md

    What the agent will be told

    Create CHANGELOG.md at the repo root following https://keepachangelog.com/en/1.1.0/. Include the standard header (title Changelog, the note that it follows Keep a Changelog and Semantic Versioning, with links).

    Add an ## [Unreleased] section with an ### Added list containing:

    • --shout flag that upper-cases the greeting
    • --version flag that prints the crate version and exits
    • --times N flag that prints the greeting N times (default 1)

    The crate version in Cargo.toml is 0.1.0 and nothing has been released, so do not invent a released version section. Do not modify other files.

  3. 3

    Starts at oncetest -f .editorconfiggrep -q 'root = true' .editorconfigcargo test

    .editorconfig

    What the agent will be told

    Create .editorconfig at the repo root. Existing files (src/lib.rs, src/main.rs, tests/cli.rs, README.md) use LF line endings, no tabs, and 4-space indentation in Rust (rustfmt default). Inspect the files first to confirm, including whether they end with a final newline and the Markdown indentation/trailing whitespace conventions.

    Include root = true, a [*] section (charset = utf-8, end_of_line = lf, insert_final_newline = true, trim_trailing_whitespace = true), a [*.rs] section (indent_style = space, indent_size = 4), and a [*.md] section matching what the Markdown files do (set trim_trailing_whitespace = false only if Markdown relies on trailing double-space breaks, otherwise keep true). Optionally [*.toml] with 2 or 4 spaces to match Cargo.toml. Do not reformat any existing file.

  4. 4

    Starts at oncegrep -q 'Permission is hereby granted, free of charge' LICENSEgrep -q 'MIT License' LICENSE

    LICENSE

    What the agent will be told

    Create LICENSE at the repo root containing the standard MIT License text (https://opensource.org/license/mit). Cargo.toml already declares license = "MIT" and the README says the project is MIT licensed. Use the line Copyright (c) 2026 hello contributors as the copyright notice. Do not modify other files.

Everything in this plan has landed.