Skip to content

Commit ba7b375

Browse files
committed
docs: ship MkDocs Material site on GitHub Pages
Turn the existing docs/ folder into a searchable, navigable site at datallmhub.github.io/agentflow4j — same content, better discovery surface for both humans and LLM training corpora. - mkdocs.yml: Material theme, dark default, structured nav (Get started / Governance / Resilience & runtime / Recipes / Tutorials / Testing / Samples), pymdownx extensions for code blocks and tables - docs/index.md: landing page mirroring the README hook with deep links into the doc sections - .github/workflows/docs.yml: build + deploy to GitHub Pages on every docs/ or mkdocs.yml change, using mkdocs --strict No build step required of users — Maven/Java workflow unchanged. The site is a parallel surface, the README and JitPack flow stay primary. To activate: Settings → Pages → Source: GitHub Actions.
1 parent f774413 commit ba7b375

3 files changed

Lines changed: 189 additions & 0 deletions

File tree

.github/workflows/docs.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: docs
2+
3+
on:
4+
push:
5+
branches: [main]
6+
paths:
7+
- 'docs/**'
8+
- 'mkdocs.yml'
9+
- '.github/workflows/docs.yml'
10+
workflow_dispatch:
11+
12+
permissions:
13+
contents: read
14+
pages: write
15+
id-token: write
16+
17+
concurrency:
18+
group: pages
19+
cancel-in-progress: false
20+
21+
jobs:
22+
build:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- uses: actions/checkout@v4
26+
- uses: actions/setup-python@v5
27+
with:
28+
python-version: '3.x'
29+
- name: Install MkDocs Material
30+
run: pip install --quiet mkdocs-material
31+
- name: Build site
32+
run: mkdocs build --strict
33+
- name: Upload artifact
34+
uses: actions/upload-pages-artifact@v3
35+
with:
36+
path: site
37+
38+
deploy:
39+
needs: build
40+
runs-on: ubuntu-latest
41+
environment:
42+
name: github-pages
43+
url: ${{ steps.deployment.outputs.page_url }}
44+
steps:
45+
- name: Deploy to GitHub Pages
46+
id: deployment
47+
uses: actions/deploy-pages@v4

docs/index.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# AgentFlow4J
2+
3+
**Build governed, stateful multi-agent workflows in Java — orchestration, persistence, and runtime observability.**
4+
5+
Spring AI gives you LLM primitives (`ChatClient`, tools). **AgentFlow4J gives you a structured runtime for multi-step systems.** Going from single prompts to multi-agent workflows makes execution stateful, failure-prone, and hard to inspect. AgentFlow4J provides the execution graph, durable state, and governance gates to run those workflows safely — all in idiomatic Java, no sidecar, no YAML.
6+
7+
[:material-rocket-launch: Get started](two-api-levels.md){ .md-button .md-button--primary }
8+
[:material-github: GitHub repo](https://github.com/datallmhub/agentflow4j){ .md-button }
9+
[:material-package: JitPack](https://jitpack.io/#datallmhub/agentflow4j){ .md-button }
10+
11+
---
12+
13+
## What you get
14+
15+
| Spring AI | AgentFlow4J runtime |
16+
|---|---|
17+
| Primitives (`ChatClient`, tools) | Structured execution (`AgentGraph`, `CoordinatorAgent`) |
18+
| Manual orchestration glue | Graph-based execution & dynamic routing |
19+
| No durable state | Typed shared state (`StateKey<T>`) + checkpoints |
20+
| Retry logic in user code | Built-in retry & circuit-breaker policies |
21+
| No resume | Interrupt & resume from the last valid checkpoint |
22+
| Agents fully trusted | Governed execution — tool, state-write, budget and approval gates |
23+
24+
---
25+
26+
## Try it in 30 seconds
27+
28+
```bash
29+
git clone https://github.com/datallmhub/agentflow4j.git
30+
cd agentflow4j
31+
mvn install -DskipTests -q
32+
mvn -pl agentflow4j-samples exec:java
33+
```
34+
35+
Runs `SupportTriageDemo` — a customer-support ticket flowing through a graph: `triage → specialist → policy gate → reply`. Falls back to deterministic stubs offline, or calls Mistral when `MISTRAL_API_KEY` is set.
36+
37+
---
38+
39+
## Where to next
40+
41+
- **New here?** Start with [Two API levels](two-api-levels.md) — the Squad vs Graph distinction.
42+
- **Worried about cost or unsafe actions?** Read the [governance trilogy](tool-policy.md): tool, state and approval gates.
43+
- **Building for production?** [Durable runs](recipes/durable-runs.md) shows how to survive a mid-workflow crash.
44+
- **Want the full story?** The [Stop your agent burning $1000 overnight](tutorials/stop-your-agent-burning-money.md) tutorial walks through every governance piece end-to-end.
45+
46+
---
47+
48+
!!! note "Scope"
49+
AgentFlow4J is an independent open-source project. It is **not** an official Spring project.

mkdocs.yml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
site_name: AgentFlow4J
2+
site_description: Java/Spring runtime for governed multi-agent LLM workflows — orchestration, durable runs, runtime observability.
3+
site_url: https://datallmhub.github.io/agentflow4j/
4+
site_author: agentflow4j
5+
6+
repo_url: https://github.com/datallmhub/agentflow4j
7+
repo_name: datallmhub/agentflow4j
8+
edit_uri: edit/main/docs/
9+
10+
docs_dir: docs
11+
12+
theme:
13+
name: material
14+
language: en
15+
features:
16+
- navigation.sections
17+
- navigation.indexes
18+
- navigation.top
19+
- navigation.tracking
20+
- search.suggest
21+
- search.highlight
22+
- content.code.copy
23+
- content.action.edit
24+
- toc.follow
25+
palette:
26+
- media: "(prefers-color-scheme: dark)"
27+
scheme: slate
28+
primary: indigo
29+
accent: indigo
30+
toggle:
31+
icon: material/brightness-4
32+
name: Switch to light mode
33+
- media: "(prefers-color-scheme: light)"
34+
scheme: default
35+
primary: indigo
36+
accent: indigo
37+
toggle:
38+
icon: material/brightness-7
39+
name: Switch to dark mode
40+
font:
41+
text: Inter
42+
code: JetBrains Mono
43+
icon:
44+
repo: fontawesome/brands/github
45+
46+
markdown_extensions:
47+
- admonition
48+
- attr_list
49+
- md_in_html
50+
- tables
51+
- toc:
52+
permalink: true
53+
- pymdownx.highlight:
54+
anchor_linenums: true
55+
line_spans: __span
56+
pygments_lang_class: true
57+
- pymdownx.inlinehilite
58+
- pymdownx.superfences
59+
- pymdownx.snippets
60+
- pymdownx.tabbed:
61+
alternate_style: true
62+
- pymdownx.details
63+
- pymdownx.emoji:
64+
emoji_index: !!python/name:material.extensions.emoji.twemoji
65+
emoji_generator: !!python/name:material.extensions.emoji.to_svg
66+
67+
nav:
68+
- Home: index.md
69+
- Get started:
70+
- Two API levels: two-api-levels.md
71+
- LLM providers: llm-providers.md
72+
- Typed state: state.md
73+
- Governance:
74+
- Tool policy: tool-policy.md
75+
- State policy: state-policy.md
76+
- Approval gate: approval-gate.md
77+
- Resilience & runtime:
78+
- Resilience & error handling: resilience.md
79+
- Run log: run-log.md
80+
- Observability: observability.md
81+
- Streaming: streaming.md
82+
- Recipes:
83+
- Approval via Slack: recipes/approval-via-slack.md
84+
- Durable runs: recipes/durable-runs.md
85+
- Tutorials:
86+
- "Stop your agent burning $1000 overnight": tutorials/stop-your-agent-burning-money.md
87+
- Testing: testing.md
88+
- Samples: samples.md
89+
90+
extra:
91+
social:
92+
- icon: fontawesome/brands/github
93+
link: https://github.com/datallmhub/agentflow4j

0 commit comments

Comments
 (0)