Skip to content

Commit ead7adc

Browse files
committed
Rebrand as Agentic Secrets and prepare public repo
1 parent e258923 commit ead7adc

101 files changed

Lines changed: 3169 additions & 2778 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
name: Bug report
2+
description: Report a reproducible defect using synthetic data only.
3+
title: "[Bug]: "
4+
labels: ["bug"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Do not include real secrets, provider tokens, private keys, Keychain contents, Bitwarden item data, shell environment dumps, or secret-derived logs.
10+
- type: textarea
11+
id: summary
12+
attributes:
13+
label: Summary
14+
description: What happened?
15+
validations:
16+
required: true
17+
- type: textarea
18+
id: steps
19+
attributes:
20+
label: Reproduction Steps
21+
description: Use synthetic placeholder values only.
22+
placeholder: |
23+
1. ...
24+
2. ...
25+
3. ...
26+
validations:
27+
required: true
28+
- type: textarea
29+
id: expected
30+
attributes:
31+
label: Expected Behavior
32+
validations:
33+
required: true
34+
- type: textarea
35+
id: actual
36+
attributes:
37+
label: Actual Behavior
38+
validations:
39+
required: true
40+
- type: input
41+
id: macos
42+
attributes:
43+
label: macOS Version
44+
placeholder: "26.x"
45+
validations:
46+
required: true
47+
- type: input
48+
id: swift
49+
attributes:
50+
label: Swift / Xcode Version
51+
placeholder: "swift --version; xcodebuild -version"
52+
- type: checkboxes
53+
id: secret-check
54+
attributes:
55+
label: Secret Handling Check
56+
options:
57+
- label: I have not included real secrets, tokens, private keys, or secret-derived logs.
58+
required: true

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Security vulnerability
4+
url: https://github.com/CodeAlive-AI/agentic-secrets/security/advisories/new
5+
about: Report vulnerabilities privately. Do not open public issues for vulnerability details.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: Feature request
2+
description: Propose a change to Agentic Secrets behavior or documentation.
3+
title: "[Feature]: "
4+
labels: ["enhancement"]
5+
body:
6+
- type: textarea
7+
id: problem
8+
attributes:
9+
label: Problem
10+
description: What user or maintainer problem should this solve?
11+
validations:
12+
required: true
13+
- type: textarea
14+
id: proposal
15+
attributes:
16+
label: Proposal
17+
description: What should Agentic Secrets do differently?
18+
validations:
19+
required: true
20+
- type: textarea
21+
id: security
22+
attributes:
23+
label: Security Impact
24+
description: How does this affect secret delivery, local authentication, audit, grants, policy, or provider bindings?
25+
validations:
26+
required: true

.github/pull_request_template.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
## Summary
2+
3+
-
4+
5+
## Verification
6+
7+
- [ ] `swift build`
8+
- [ ] `swift run agentic-secrets-contract-tests`
9+
- [ ] `./script/ui_smoke.sh`
10+
- [ ] `./scripts/ci.sh`
11+
- [ ] `./scripts/tahoe_compatibility_check.sh`
12+
- [ ] `./scripts/check_secret_authority.sh`
13+
- [ ] `git diff --check`
14+
15+
## Security Notes
16+
17+
- [ ] This change does not add real secrets, tokens, private keys, credential files, or secret-derived logs.
18+
- [ ] Any secret-handling behavior change is documented in the PR description.

.github/workflows/ci.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
permissions:
10+
contents: read
11+
12+
concurrency:
13+
group: ci-${{ github.workflow }}-${{ github.ref }}
14+
cancel-in-progress: true
15+
16+
jobs:
17+
build:
18+
name: SwiftPM and release gates
19+
runs-on: macos-26
20+
timeout-minutes: 30
21+
22+
steps:
23+
- name: Checkout
24+
uses: actions/checkout@v4
25+
26+
- name: Toolchain
27+
run: |
28+
sw_vers
29+
xcodebuild -version
30+
swift --version
31+
32+
- name: Whitespace check
33+
run: git diff --check
34+
35+
- name: CI gates
36+
run: ./scripts/ci.sh
37+
38+
- name: Tahoe compatibility
39+
run: ./scripts/tahoe_compatibility_check.sh

.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,11 @@
44
DerivedData/
55
build/
66
dist/
7+
.env
8+
.env.*
9+
*.p12
10+
*.mobileprovision
11+
*.xcarchive
12+
*.log
13+
!.github/**/*.yml
14+
!.github/**/*.yaml

AGENTS.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# AgenticFortress Agent Notes
1+
# Agentic Secrets Agent Notes
22

33
This file is for coding agents and maintainers working in this repository. Keep user-facing onboarding short in `README.md`; put implementation, verification, and release workflow details here or in `Docs/`.
44

@@ -8,7 +8,7 @@ Current release metadata: `0.1.0 alpha`. This is a pre-stable product; breaking
88

99
## Product Boundary
1010

11-
AgenticFortress is a macOS lower-leakage secret delivery system for developer machines.
11+
Agentic Secrets is a macOS lower-leakage secret delivery system for developer machines.
1212

1313
It does not make execution safe. It makes delivery of secrets explicit, narrow, approved, bounded, auditable, and lower-leakage than `.env`, shell environment, MCP configs, or plaintext provider tokens.
1414

@@ -40,26 +40,26 @@ UI changes must preserve native macOS expectations:
4040

4141
## Implemented Delivery Contracts
4242

43-
- Signed shim model through one `agentic-fortress-shim` binary and symlink-style invocation.
44-
- CLI env delivery with signed/versioned dynamic command adapter packs and deterministic decision manifests.
45-
- Local API proxy profiles with per-session localhost capability tokens.
46-
- BWS provider split where runtime fetch is one approved secret per invocation.
43+
- Signed shim model through one `agentic-secrets-shim` binary and symlink-style invocation.
44+
- CLI env delivery with signed/versioned dynamic command command policy packs and deterministic decision manifests.
45+
- Local API API session profiles with per-session localhost capability tokens.
46+
- Bitwarden provider split where runtime fetch is one approved secret per invocation.
4747
- Remote MCP bridge contracts with pinned upstream profile and session propagation.
4848
- Rollback detection that locks policy use and clears remembered leases.
4949
- Structured audit with redaction gates.
5050
- Release gate checklist backed by executable contract tests.
5151

5252
Adapter packs are dynamic but not trust-by-configuration. External packs must verify under a trusted P-256 signing key, publisher allowlist, CLI allowlist, schema version, expiry, rule validation, and rollback checks before registration. Lease scope includes adapter identity, version, and hash.
5353

54-
Runtime policy is configurable through `AgenticFortressConfig`; the default JSON lives at `config/default.agentic-fortress.json`. Configuration covers adapter trust, delivery defaults, proxy profiles, MCP profiles, and macOS compatibility gates.
54+
Runtime policy is configurable through `AgenticSecretsConfiguration`; the default JSON lives at `config/default.agentic-secrets.json`. Configuration covers adapter trust, delivery defaults, API session profiles, MCP profiles, and macOS compatibility gates.
5555

5656
## Build And Verify
5757

5858
Run the standard gates before presenting a production-ready change:
5959

6060
```sh
6161
swift build
62-
swift run agentic-fortress-contract-tests
62+
swift run agentic-secrets-contract-tests
6363
./script/ui_smoke.sh
6464
./script/build_and_run.sh --verify
6565
./scripts/ci.sh
@@ -75,9 +75,9 @@ Package manually:
7575

7676
```sh
7777
./scripts/package_release.sh
78-
./scripts/validate_release_artifact.sh build/AgenticFortress.app
79-
./scripts/check_entitlements_diff.sh build/AgenticFortress.app
80-
codesign --verify --strict --deep --verbose=4 build/AgenticFortress.app
78+
./scripts/validate_release_artifact.sh "build/AgenticSecrets.app"
79+
./scripts/check_entitlements_diff.sh "build/AgenticSecrets.app"
80+
codesign --verify --strict --deep --verbose=4 "build/AgenticSecrets.app"
8181
```
8282

8383
Recommended local install:
@@ -90,32 +90,32 @@ Native guided install:
9090

9191
```sh
9292
./scripts/package_release.sh
93-
open build/AgenticFortress.app
93+
open "build/AgenticSecrets.app"
9494
```
9595

9696
Then use **Diagnostics → Install Local Daemon** or **Diagnostics → Repair Local Daemon**. The app shows the app copy, helper symlinks, state directory, run directory, install manifest, LaunchAgent, and socket path before writing files. It does not read or move local secret material. If the app was launched from `build/`, open the installed copy after installation so authenticated IPC matches the installed bundle path in the manifest.
9797

9898
Uninstall while keeping local secret state:
9999

100100
```sh
101-
./scripts/uninstall_local.sh --prefix "$HOME/Library/Application Support/AgenticFortress/LocalInstall" --keep-secrets
101+
./scripts/uninstall_local.sh --prefix "$HOME/Library/Application Support/AgenticSecrets/LocalInstall" --keep-secrets
102102
```
103103

104104
The local installer writes an install manifest with helper paths, owners, permissions, versions, SHA-256 hashes, and cdhash values. Runtime IPC authorization uses that manifest instead of requiring a Developer ID Team ID.
105105

106-
The core daemon serves the local control plane over a Unix domain socket. Helpers authenticate to core with the install manifest and do not read local secret material directly.
106+
The broker daemon serves the local control plane over a Unix domain socket. Helpers authenticate to core with the install manifest and do not read local secret material directly.
107107

108-
On macOS Tahoe, the self-build track avoids restricted entitlements so ad-hoc signed binaries can execute normally. The core daemon stores local secret material in an owner-only encrypted file store gated by LocalAuthentication; no shared Keychain access group is required for the self-build track. Registered CLI trust metadata is protected by a device-local macOS Keychain integrity key so hand-edited registry files fail closed before any secret is resolved.
108+
On macOS Tahoe, the self-build track avoids restricted entitlements so ad-hoc signed binaries can execute normally. The broker daemon stores local secret material in an owner-only encrypted file store gated by LocalAuthentication; no shared Keychain access group is required for the self-build track. Registered CLI trust metadata is protected by a device-local macOS Keychain integrity key so hand-edited registry files fail closed before any secret is resolved.
109109

110110
CLI runs may reuse scoped authorization grants after successful LocalAuthentication. The default mode is `always`; `remember-24h`, `short`, and `once` are available per run. Persistent grants are signed with a device-local macOS Keychain key and scoped to CLI name, target identity, workspace hash, config context, untrusted origin hint, provenance confidence, delivery mode, and secret alias. Short grants additionally include action class, command digest, and risk. Command policy is re-evaluated before every secret delivery, and destructive commands require fresh approval. Grants must never contain secret values.
111111

112112
## Release Evidence
113113

114114
```sh
115-
swift run agentic-fortress release-gates
116-
swift run agentic-fortress ipc-conformance
115+
swift run agentic-secrets release-gates
116+
swift run agentic-secrets ipc-conformance
117117
./scripts/check_secret_authority.sh
118-
./scripts/check_entitlements_diff.sh build/AgenticFortress.app
118+
./scripts/check_entitlements_diff.sh "build/AgenticSecrets.app"
119119
./scripts/create_release_evidence.sh
120120
```
121121

@@ -125,7 +125,7 @@ Optional future maintainer distribution signing and notarization:
125125

126126
```sh
127127
CODESIGN_IDENTITY="Developer ID Application: ..." \
128-
NOTARYTOOL_PROFILE="agentic-fortress-notary" \
128+
NOTARYTOOL_PROFILE="agentic-secrets-notary" \
129129
./scripts/sign_notarize_release.sh
130130
```
131131

CODE_OF_CONDUCT.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Code of Conduct
2+
3+
This project follows the Contributor Covenant Code of Conduct, version 2.1.
4+
5+
## Our Pledge
6+
7+
We pledge to make participation in this project a respectful, harassment-free experience for everyone.
8+
9+
## Expected Behavior
10+
11+
- Use welcoming and inclusive language.
12+
- Respect differing viewpoints and experience levels.
13+
- Give and receive constructive technical feedback.
14+
- Focus on what is best for the project and its users.
15+
- Handle security-sensitive topics carefully and privately.
16+
17+
## Unacceptable Behavior
18+
19+
- Harassment, intimidation, threats, or personal attacks.
20+
- Sexualized language or imagery.
21+
- Trolling, insulting comments, or sustained disruption.
22+
- Publishing private information without explicit permission.
23+
- Publicly posting vulnerabilities, exploit details, credentials, tokens, private keys, or secret-derived logs.
24+
25+
## Enforcement
26+
27+
Maintainers may remove comments, issues, pull requests, or other contributions that violate this Code of Conduct. Maintainers may also temporarily or permanently limit participation for behavior they judge inappropriate, threatening, offensive, or harmful.
28+
29+
Instances of abusive behavior may be reported through the repository maintainers. Security-sensitive reports should follow `SECURITY.md`.

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Contributing
22

3-
Thanks for considering a contribution to AgenticFortress.
3+
Thanks for considering a contribution to Agentic Secrets.
44

55
## License
66

@@ -25,7 +25,7 @@ area you changed. The full local verification gate is:
2525

2626
```sh
2727
swift build
28-
swift run agentic-fortress-contract-tests
28+
swift run agentic-secrets-contract-tests
2929
./script/ui_smoke.sh
3030
./script/build_and_run.sh --verify
3131
./scripts/ci.sh

0 commit comments

Comments
 (0)