Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @Gandy2025
55 changes: 55 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Bug report
description: Report a reproducible defect in first-tree-skills
title: "bug: "
labels: [bug]
body:
- type: markdown
attributes:
value: |
Do not report security vulnerabilities here. Use the private reporting link in SECURITY.md.
- type: input
id: version
attributes:
label: Release or commit
description: Provide an immutable tag or full commit SHA.
placeholder: v0.1.0 or 40-character SHA
validations:
required: true
- type: dropdown
id: host
attributes:
label: Agent host
options:
- Codex
- Claude Code
- Deterministic scripts only
- Other or unknown
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Minimal reproduction
description: Include sanitized inputs, exact commands or prompts, and observed output.
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected behavior
validations:
required: true
- type: textarea
id: environment
attributes:
label: Environment
description: Include OS, Python, skills CLI, First Tree CLI, gh, and agent versions that matter.
validations:
required: true
- type: checkboxes
id: hygiene
attributes:
label: Data hygiene
options:
- label: I removed credentials, personal data, private ticket content, and unrelated logs.
required: true
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Private security report
url: https://github.com/agent-team-foundation/first-tree-skills/security/advisories/new
about: Report suspected vulnerabilities privately; do not open a public issue.
- name: First Tree platform issues
url: https://github.com/agent-team-foundation/first-tree/issues
about: Report defects in the First Tree CLI, Cloud, or agent runtime to the owning project.
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/feature.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Feature request
description: Propose a focused improvement within the documented product scope
title: "feature: "
labels: [enhancement]
body:
- type: textarea
id: problem
attributes:
label: User problem
description: Describe the workflow and why the current behavior is insufficient.
validations:
required: true
- type: textarea
id: outcome
attributes:
label: Desired outcome
description: Describe observable behavior, not an implementation prescription.
validations:
required: true
- type: dropdown
id: host
attributes:
label: Agent host
options:
- Both Codex and Claude Code
- Codex
- Claude Code
- Host-independent deterministic scripts
validations:
required: true
- type: textarea
id: boundaries
attributes:
label: Scope and tradeoffs
description: Note compatibility, safety, migration, or non-goal implications.
validations:
required: true
28 changes: 28 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
## Summary

<!-- What user-visible or maintenance outcome does this change deliver? -->

## Scope

<!-- State what is included and explicitly excluded. -->

## Validation

- [ ] Skill structure validation
- [ ] Full unit test suite
- [ ] Deterministic Floor
- [ ] Python compileall
- [ ] Ruff lint and format checks
- [ ] Agent Skills validation
- [ ] Pinned installer discovery
- [ ] `skills@latest` discovery smoke
- [ ] `git diff --check`

List exact commands, versions, and results. Explain any unchecked item.

## Safety and compatibility

- [ ] No credentials, personal data, model transcripts, or live-run artifacts
- [ ] English canonical docs and Chinese mirrors are synchronized when affected
- [ ] Support and release claims do not exceed the evidence collected
- [ ] Breaking changes and migration steps are documented
8 changes: 5 additions & 3 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,15 @@ jobs:
python-version: "3.12"
- uses: actions/setup-node@v4
with:
node-version: "22"
node-version: "22.20.0"
- uses: astral-sh/setup-uv@v6
- name: Lint Python
run: uvx ruff check .
- name: Check Python formatting
run: uvx ruff format --check .
- name: Validate Agent Skills contract
run: uvx --from skills-ref agentskills validate skills/run-with-first-tree
- name: Verify skills CLI discovery
run: npx --yes skills@1.5.21 add . --list
- name: Verify supported skills CLI discovery
run: npx --yes skills@1.5.22 add . --list
- name: Smoke current skills CLI discovery
run: npx --yes skills@latest add . --list
29 changes: 29 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Changelog

All notable user-visible changes are recorded here. This project follows
semantic versioning with an explicit `0.x` policy: breaking supported-contract
changes increment the minor version; backward-compatible fixes increment the
patch version.

## [Unreleased]

### Added

- Release preparation for the first public `v0.1.0`, supporting both Codex and
Claude Code.
- Exact mattpocock/skills `to-tickets` v1.2.2 provenance and a deterministic
compatibility fixture.
- Installation lifecycle, release policy, public trust documentation, and
contribution templates.
- Pinned `skills@1.5.22` distribution discovery plus a separate
`skills@latest` forward-compatibility smoke.

### Boundaries

- The public release, anonymous-install verification, clean-home Codex and
Claude Code qualification, and human-authorized live Gate remain pending.
- V0 does not support Wayfinder maps directly, native GitLab/custom tracker
APIs, background monitoring, or automatic source-ticket writeback.

`v0.1.0` will receive its own dated section only when its protected tag and
GitHub Release are created and verified against the qualified commit.
40 changes: 40 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Code of Conduct

[简体中文](CODE_OF_CONDUCT.zh-CN.md)

## Our standards

We want participation in this project to be safe, respectful, and constructive.
Examples of expected behavior include:

- showing empathy and respect for different viewpoints and experience levels;
- giving specific, actionable technical feedback;
- accepting responsibility, apologizing, and correcting mistakes; and
- focusing on what is best for users and the community.

Unacceptable behavior includes harassment, discrimination, sexualized
language or imagery, threats, doxxing, sustained disruption, and publishing
another person's private information without permission.

## Scope and enforcement

These standards apply in repository issues, pull requests, reviews, and other
spaces where someone represents this project. Maintainers may edit or remove
content, reject contributions, temporarily restrict participation, or ban
participants when conduct threatens a safe and constructive environment.

For non-sensitive project conduct concerns, open an issue with only the
minimum information needed for maintainers to act. Do not publish personal or
sensitive information. For threats, doxxing, or violations of GitHub's
platform policies, use GitHub's
[Report Abuse](https://support.github.com/contact/report-abuse) process.
Security vulnerabilities follow [SECURITY.md](SECURITY.md), not this process.

Enforcement decisions should consider impact, context, prior behavior, and the
safety of affected people. This project does not promise a response time or a
particular outcome.

## Attribution

This policy is informed by the
[Contributor Covenant, version 2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct.html).
19 changes: 19 additions & 0 deletions CODE_OF_CONDUCT.zh-CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# 行为准则

> 英文 [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) 是规范来源。本译文同步于 2026-08-06;若内容不一致,以英文版为准。

## 我们的标准

我们希望所有参与者都能在安全、尊重和建设性的环境中协作。应当:尊重不同观点和经验、给出具体可执行的技术反馈、为错误负责并修正,以及优先考虑用户和社区利益。

不可接受的行为包括骚扰、歧视、性化语言或图像、威胁、公开他人隐私、持续干扰,以及未经允许披露他人私密信息。

## 范围与执行

本准则适用于仓库 issue、pull request、review,以及代表本项目参与的其他空间。维护者可以编辑或移除内容、拒绝贡献、限制参与或封禁危害安全协作环境的参与者。

非敏感的项目行为问题可以提交 issue,但只提供维护者采取行动所需的最少信息,不要公开个人或敏感信息。威胁、doxxing 或违反 GitHub 平台政策的情况,请使用 GitHub 的 [Report Abuse](https://support.github.com/contact/report-abuse) 流程。安全漏洞应遵循 [SECURITY.zh-CN.md](SECURITY.zh-CN.md)。

执行决定会考虑影响、上下文、历史行为和受影响人员的安全。本项目不承诺固定响应时间或特定结果。

本准则参考 [Contributor Covenant 2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct.html)。
37 changes: 37 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Contributing

[简体中文](CONTRIBUTING.zh-CN.md)

Thank you for helping improve `first-tree-skills`.

## Before opening work

- Search existing issues and pull requests.
- Use the bug or feature issue form when a tracked discussion will help.
- Do not open a public issue for a security vulnerability; follow
[SECURITY.md](SECURITY.md).
- Keep V0 changes inside the documented scope. Wayfinder ingestion, native
GitLab/custom tracker APIs, background monitoring, automatic ticket
writeback, and a general eval platform are not part of `v0.1.x`.

## Pull requests

1. Fork or branch from current `main`.
2. Make one focused change with tests for stable code behavior.
3. Run the checks in [DEVELOPMENT.md](DEVELOPMENT.md).
4. Update English canonical documentation when behavior or support changes.
5. Update its Chinese counterpart in the same pull request, including the
synchronization date.
6. Complete the pull request template with exact validation evidence and
clearly state what was not run.

Do not commit credentials, personal data, generated caches, model transcripts,
or First Tree live-run artifacts. Contributions are provided under the
repository's [MIT License](LICENSE).

## Review expectations

Review considers both repository standards and the requested behavior. A
release-affecting change may require exact-head QA or a separately authorized
agent evaluation after deterministic checks pass. Passing tests alone do not
qualify live agent behavior.
27 changes: 27 additions & 0 deletions CONTRIBUTING.zh-CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# 贡献指南

> 英文 [CONTRIBUTING.md](CONTRIBUTING.md) 是规范来源。本译文同步于 2026-08-06;若内容不一致,以英文版为准。

感谢你帮助改进 `first-tree-skills`。

## 开始前

- 先搜索已有 issue 和 pull request。
- 需要跟踪讨论时,使用 bug 或 feature issue 表单。
- 安全漏洞不要公开提交 issue;请遵循 [SECURITY.zh-CN.md](SECURITY.zh-CN.md)。
- 保持 V0 范围:`v0.1.x` 不包含 Wayfinder 直接输入、GitLab/custom tracker 原生 API、后台监控、自动回写 ticket 或通用 eval 平台。

## Pull request

1. 从当前 `main` 创建分支。
2. 每个 PR 保持单一焦点;稳定代码行为需要回归测试。
3. 运行 [DEVELOPMENT.zh-CN.md](DEVELOPMENT.zh-CN.md) 中的检查。
4. 行为或支持范围变化时,更新英文规范文档。
5. 同一个 PR 同步中文版本并更新同步日期。
6. 在 PR 模板中记录精确验证证据,并明确哪些检查未运行。

不得提交凭据、个人数据、generated cache、模型 transcript 或 First Tree live-run artifact。贡献按仓库 [MIT License](LICENSE) 提供。

## 审查边界

Review 会同时检查仓库规范和目标行为。影响发行的变更在 deterministic checks 之后还可能需要 exact-head QA 或单独授权的 agent eval。测试通过本身不能证明 live agent 行为。
58 changes: 58 additions & 0 deletions DEVELOPMENT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Development

[简体中文](DEVELOPMENT.zh-CN.md)

## Requirements

- Python 3.10 and 3.12 for the supported test matrix.
- Node.js 22.20 or newer.
- `uvx` for isolated Python tooling.
- `npx` for distribution discovery.
- `gh` for GitHub-source behavior and repository work.

No model credentials or First Tree account are required for deterministic
development checks.

## Deterministic validation

Run from the repository root:

```bash
python3 scripts/validate_skills.py
python3 -m unittest discover -s tests -v
python3 evals/floor.py
python3 -m compileall -q scripts skills tests evals
uvx ruff check .
uvx ruff format --check .
uvx --from skills-ref agentskills validate skills/run-with-first-tree
npx --yes skills@1.5.22 add . --list
npx --yes skills@latest add . --list
git diff --check
```

Run the Python commands with both supported Python versions. The exact
installer is the release evidence baseline; the separate `latest` command is a
forward-compatibility smoke and must not replace the pinned check.

## Test boundaries

Unit tests and the deterministic Floor protect code and fixture contracts.
They must not call a model, First Tree, a tracker, or a network service. Agent
behavior belongs to a separately authorized live Gate against a frozen
candidate.

The Matt Pocock compatibility fixture is derived from the exact public
`to-tickets` v1.2.2 local template. Its provenance and file hashes are stored
in `tests/fixtures/mattpocock-skills-v1.2.2.json`; the test runs the real local
builder and validator and compares graph results with independent literals.
Primary-source release, installer, and First Tree CLI evidence is recorded in
[docs/release-research.md](docs/release-research.md).

## Change discipline

- Keep product behavior, deterministic tests, and documentation claims aligned.
- Add a failing test before changing stable code behavior when a public seam is
available.
- Do not add secrets, credentials, generated caches, or live-run artifacts.
- Keep public documentation current-system-focused. Design rationale and
internal decision records do not belong in this repository.
Loading
Loading