Skip to content

Commit b785b08

Browse files
committed
docs(docs): add README and MIT license
Why: - document project usage and layout - provide a GitHub-recognized license - clarify commit message bullet formatting Impact: - adds README and MIT LICENSE for repository - enforces no blank lines between bullets in AGENTS - Tests: just check
1 parent dbf26c9 commit b785b08

3 files changed

Lines changed: 76 additions & 0 deletions

File tree

AGENTS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ Rules (strict):
4949
- Body is required for every commit and must include **Why** and **Impact**
5050
sections exactly as shown.
5151
- Use bullet points under **Why** and **Impact** (at least one each).
52+
- Do not insert blank lines between bullet points.
5253
- Use **Breaking** only when relevant.
5354
- Wrap body lines at ~72 chars.
5455
- If multiple areas change, pick the dominant scope and mention the others in

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026 Stefan Ruzitschka
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# intar
2+
3+
QEMU-based DevOps lab environment that runs HCL scenarios in local VMs,
4+
evaluates probes, and presents progress in a TUI.
5+
6+
## Quick start
7+
Requirements:
8+
- Rust toolchain
9+
- QEMU (`qemu-system-*`, `qemu-img`) in PATH
10+
11+
```sh
12+
cargo run --bin intar -- start scenarios/broken-nginx.hcl
13+
```
14+
15+
## Usage
16+
```sh
17+
intar start <scenario.hcl>
18+
intar list --dir <path>
19+
intar ssh <vm-name> [--run <run>] [--command <cmd>]
20+
intar logs [--run <run>] [--vm <vm>] [--log-type console|ssh|system]
21+
```
22+
23+
## Scenario format (HCL)
24+
```hcl
25+
scenario "broken-nginx" {
26+
description = "Fix a misconfigured nginx server"
27+
image "ubuntu-24.04" { ... }
28+
probe "nginx-running" { type = "service" ... }
29+
vm "webserver" { ... probes = ["nginx-running"] }
30+
}
31+
```
32+
33+
See `scenarios/` for full examples.
34+
35+
## Project layout
36+
- `crates/intar-cli` - CLI entrypoint + agent embedding
37+
- `crates/intar-vm` - VM orchestration + cloud-init
38+
- `crates/intar-agent` - guest-side probe runner
39+
- `crates/intar-probes` - probe specs + validation
40+
- `crates/intar-ui` - TUI
41+
42+
## Development
43+
- Run checks: `just check`
44+
- Rebuild embedded agent (after agent/probe changes):
45+
- `cargo zigbuild --release --target x86_64-unknown-linux-musl -p intar-agent`
46+
- `cargo zigbuild --release --target aarch64-unknown-linux-musl -p intar-agent`
47+
- `cargo build --release -p intar-cli`
48+
49+
## Contributing
50+
Discussions and PRs welcome. Include the scenario file and `intar logs` output
51+
when reporting a problem.
52+
53+
## License
54+
MIT

0 commit comments

Comments
 (0)