업데이트로 돌아가기
New releaseJul 29, 2026

cynative v1.8.0

클라우드, 코드, 런타임 인프라를 조회하여 잘못된 구성, 유출된 비밀, 권한 상승 경로를 검증된 증거 기반 결과로 드러내는 읽기 전용 AI 에이전트입니다.

공유

cynative

나만의 보안 에이전트 만들기

인프라에 대한 실시간 읽기 전용 액세스 권한을 가진 보안 에이전트를 위한 오픈소스 프레임워크입니다.

CI Release License: Apache-2.0 OpenSSF Best Practices

빠른 시작 · 첫 번째 에이전트 · 문서

인프라에 대해 무엇이든 물어보세요. Cynative는 코드, 클라우드, 런타임 전반에 걸쳐 최첨단 모델을 실행하며 GitHub, GitLab, AWS, GCP, Azure, Kubernetes를 하나의 시스템으로 추론하고 검증된 답변을 돌려드립니다.```bash cynative "what in my cloud is publicly exposed that shouldn't be?"

에페메럴 샌드박스에서 코드를 작성하고 실행하며, API를 병렬로 쿼리하므로 하나의 질문이 전체 스택에 퍼져 나갑니다. 모든 발견 사항은 교차 검증되어 원래 출처까지 추적됩니다.

코딩 에이전트 및 MCP 서버와 달리, 이 도구는 **구조적으로 읽기 전용**입니다. 모든 호출은 자격 증명이 연결되기 *전에* 게이트를 통과하고 승인됩니다. 프로덕션 환경에 안심하고 연결하세요.
<!-- END agent-about -->

<p align="center">
  <img src="https://assets.kitploit.com/production/public/readmes/9087/1b3db179a03479f5951d624c8adbb4890465aa86d038d3312dc9aec9801bcfb9.gif"
       alt="cynative가 CI에서 클라우드 권한 상승까지 감사하는 모습"
       width="900">
</p>

## 에이전트가 얻는 것

- **코드-투-런타임**: AWS, GCP, Azure, 모든 K8s, GitHub 및 GitLab을 추론합니다
- **샌드박스**: 자체 네트워크나 호스트 액세스 없이 대규모 연구를 위해 코드를 생성하고 실행합니다
- **액션 게이트**: 모든 호출을 필요한 IAM 액션으로 해석하고, 자격 증명이 연결되기 전에 읽기 전용 정책을 적용합니다
- **증거 기반**: 교차 검증을 통해 모든 발견 사항을 확인합니다
- **독립적**: 단일 바이너리, 사용자 모델, 데이터는 사용자 소유로 유지됩니다

## 빠른 시작

LLM을 설치하고 설정합니다:

<!-- BEGIN quickstart-example -->```bash
brew install cynative/tap/cynative

export CYNATIVE_LLM_PROVIDER=anthropic
export CYNATIVE_LLM_MODEL=claude-opus-5
export ANTHROPIC_API_KEY=...

셸에 이미 있는 자격 증명을 자동으로 가져옵니다. 무엇이든 물어보세요:```bash cynative -p "which IAM roles can escalate to admin?" cynative -p "high-risk cloud permissions, trace each to the PR where it was granted" cynative -p "cloud credentials leaked in source code and their current blast radius" cynative "live cloud resources absent from IaC - drift" # starts an interactive session cat findings.json | cynative -p "triage these findings by exploitability"

## 첫 번째 에이전트

에이전트는 마크다운 파일입니다. 한 줄의 설명과 그다음에 프롬프트가 옵니다. 파일 이름이 에이전트 이름입니다. 직접 추가하려면 `~/.cynative/agents/`를 만들고 그 안에 하나 작성하세요. Cynative는 이 디렉터리를 자동으로 생성하지 않습니다:```bash
mkdir -p ~/.cynative/agents

cat > ~/.cynative/agents/aws-public-data-stores.md <<'EOF'
---
description: Finds publicly accessible data stores in an AWS account.
---
Check S3, RDS snapshots, EBS snapshots and public AMIs for exposure.
Report each finding with the resource ARN and how it is reachable.
EOF

cynative -p --agent aws-public-data-stores

docs/agents.md에서 형식을 확인하세요.

에이전트 실행하기```bash

cynative -p --agent aws-public-data-stores "AWS account ID 12814983572854 only" # with a task cynative -p --agent aws-public-data-stores # without cynative --agent aws-public-data-stores # seeds an interactive session

`--agent`는 `-p`, `--auto-approve`, `--config` 및 파이프된 stdin과 함께 사용되므로, 개발 중에는 동일한 파일이 대화형으로 실행되고 안정화된 후에는 비대화형으로 실행됩니다.

에이전트는 `~/.cynative/agents/`와 바이너리에 내장된 세트에서 읽어옵니다. 사용자 파일은 동일한 이름의 내장 파일보다 우선합니다. `cynative agents list`는 각 에이전트를 소스와 함께 표시하고 가려진 복사본을 표시하며, `cynative agents show <name>`은 실제로 실행될 정확한 파일을 출력합니다.

## MCP를 갖춘 코딩 에이전트로는 안 되나요?

| | 코딩 에이전트 + MCP | Cynative |
|---|---|---|
| 처리량 | 호출당 하나의 작업 | 호출을 동시에 분산하는 샌드박스 코드를 작성 - 더 적은 토큰, 더 빠른 답변 |
| 결과 | 검증되지 않은 출력 | 검증기가 모든 결과를 실시간 증거와 대조 검증 |
| 읽기 전용 | 선택적 읽기 필터 | 기본적으로 켜짐, 실패 시 차단 - 필수 IAM 작업이 보안 감사 정책에 대해 확인됨. `secretsmanager:GetSecretValue`는 IAM *읽기* 작업입니다. 필터는 이를 허용하지만 `SecurityAudit`는 차단합니다 |
| 자격 증명 | 주변 환경, 변경 없음 | 읽기 전용으로 범위가 지정된 STS 세션 - AWS도 경계를 강제합니다 |
| 폭발 반경 | 사용자의 셸, 모든 네트워크 | 연구 코드는 호스트 접근이 없는 샌드박스에서 실행되며, 네트워크는 매핑된 서비스로 고정됨 |
| 비밀 | 모델에 그대로 전송 | 모델로 전송되기 전에 도구 출력에서 삭제됨 |
| 공급망 | 자격 증명으로 실행되는 타사 MCP 및 스킬 | 하나의 오픈소스 바이너리, 커넥터 내장 |
| 감사 추적 | 분산된 세션 로그, 최선 노력 | 모든 도구 호출에 대한 실패 시 차단 JSONL 로그 - 기록할 수 없으면 중단됨 |

하나의 바이너리, 사용자의 모델 엔드포인트, 사용자의 계정. 감사 대상 클라우드의 인스턴스에서 실행하고, 해당 클라우드의 관리형 추론을 통해 실행하면, 어떤 것도 사용자 환경을 벗어나지 않습니다: 사용자 인프라의 보안을 사용자 인프라 내부에서 보호합니다.

## 설치

**Homebrew** (macOS / Linux - 권장):```bash
brew install cynative/tap/cynative

설치 스크립트 (macOS / Linux - 다운로드의 SHA-256을 릴리스 checksums.txt와 대조하여 검증하며, 실패 시 폐쇄적으로 처리합니다):```bash curl -fsSL https://raw.githubusercontent.com/cynative/cynative/main/install.sh | sh

**Windows** (Scoop):```powershell
scoop bucket add cynative https://github.com/cynative/scoop-bucket
scoop install cynative
업데이트, 제거, Windows 세부 사항, 버전 고정 및 수동 다운로드

업데이트 / 제거

방법업데이트제거
Homebrewbrew upgrade cynativebrew uninstall cynative
설치 스크립트원라이너 재실행curl -fsSL https://raw.githubusercontent.com/cynative/cynative/main/install.sh | sh -s -- --uninstall
Scoopscoop update cynativescoop uninstall cynative

Windows (PowerShell 스크립트): irm https://raw.githubusercontent.com/cynative/cynative/main/install.ps1 | iex; 제거는 & ([scriptblock]::Create((irm https://raw.githubusercontent.com/cynative/cynative/main/install.ps1))) -Uninstall로 수행합니다.

설치 스크립트 옵션: CYNATIVE_VERSION=v1.0.0으로 버전을 고정하고, CYNATIVE_INSTALL_DIR로 대상 디렉터리를 변경할 수 있습니다(기본값 ~/.local/bin, sudo 불필요). 스크립트는 gh가 설치된 경우 GitHub 릴리스 증명(attestation)을 확인합니다(기본적으로 권고 수준). CYNATIVE_REQUIRE_ATTESTATION=1로 설정하면 확인 실패 시 치명적 오류로 처리됩니다. 높은 무결성이 필요한 설치의 경우 main 대신 변경 불가능한 태그에서 스크립트를 가져오세요.

macOS (수동): 릴리스 페이지에서 cynative_Darwin_arm64.pkg(Apple Silicon) 또는 cynative_Darwin_x86_64.pkg(Intel)을 다운로드하고 sudo installer -pkg <file> -target /(또는 더블 클릭)로 설치합니다. 이 파일들은 서명, 공증(notarized) 및 스테이플링(stapled) 처리되어 첫 실행 시 Gatekeeper 프롬프트가 표시되지 않습니다. 원본 cynative_Darwin_*.tar.gz 아카이브는 스크립팅/CI용으로 남아 있습니다. 격리된(quarantined) tarball 바이너리의 첫 GUI 실행은 온라인 공증 확인을 위해 인터넷이 필요합니다(터미널/install.sh/Homebrew 사용에는 영향 없음).

Linux / Windows (수동): 릴리스 페이지에서 사전 빌드된 바이너리와 checksums.txt를 다운로드하고, SHA-256을 검증한 후 바이너리를 PATH에 추가하세요. 단일 정적 바이너리이며 종속성이 없습니다.

릴리스 서명 검증(선택 사항). 새 릴리스에는 checksums.txt.sigstore.json이 포함되어 있으며, 이는 이 저장소의 릴리스 워크플로우에 바인딩된 키리스(keyless) 인증서로 checksums.txt에 서명하는 Sigstore 번들입니다. 매니페스트를 인증한 다음 아카이브를 이에 대해 확인하세요:```bash cosign verify-blob checksums.txt
--bundle checksums.txt.sigstore.json
--certificate-identity "https://github.com/cynative/cynative/.github/workflows/release.yaml@refs/heads/main"
--certificate-oidc-issuer "https://token.actions.githubusercontent.com"

grep cynative_Linux_x86_64.tar.gz checksums.txt | sha256sum -c - # Linux grep cynative_Darwin_arm64.tar.gz checksums.txt | shasum -a 256 -c - # macOS

```powershell
(Get-FileHash .\cynative_Windows_x86_64.zip -Algorithm SHA256).Hash.ToLower()
Select-String -Path checksums.txt -Pattern cynative_Windows_x86_64.zip

이 내용은 checksums.txt에 명시된 아카이브를 다룹니다. .pkg 설치 프로그램은 Developer ID 서명, 공증(notarization), 스테이플링(stapling)이 되어 있으며, 모든 자산은 추가로 GitHub 릴리스 증명(gh release verify <tag>)으로 보호됩니다. 알아두면 좋은 두 가지 제한 사항이 있습니다: cosign--trusted-root를 전달하지 않으면 네트워크를 통해 Sigstore의 신뢰 루트를 가져오며, 파일 이름에 버전이 포함되어 있지 않기 때문에 서명은 출처와 무결성을 증명하지만 느슨한 파일 집합이 어떤 릴리스에서 온 것인지는 증명하지 못합니다. 버전을 묶는 것은 릴리스 URL 또는 gh release verify입니다.

LLM 제공업체

Cynative는 내장된 Bifrost SDK를 통해 LLM과 통신하며, 기본적으로 거의 모든 AI 제공업체를 지원합니다(OpenAI, Anthropic, Azure OpenAI, Amazon Bedrock, Google Vertex/Gemini, Cohere, Mistral, Groq, Ollama, vLLM 등). docs/providers/README.md에서 하나를 선택하고 해당 제공업체의 가이드를 따르세요.

빠른 예시```bash # Google Vertex export CYNATIVE_LLM_PROVIDER=vertex export CYNATIVE_LLM_MODEL=gemini-3.1-pro-preview export CYNATIVE_LLM_VERTEX_PROJECT_ID=my-gcp-project export CYNATIVE_LLM_VERTEX_REGION=global # CI / no gcloud: export GOOGLE_APPLICATION_CREDENTIALS=/path/to/sa.json

OpenAI

export CYNATIVE_LLM_PROVIDER=openai export CYNATIVE_LLM_MODEL=gpt-5.6-sol export OPENAI_API_KEY=sk-...

Amazon Bedrock - AWS credential chain

export CYNATIVE_LLM_PROVIDER=bedrock export CYNATIVE_LLM_MODEL=anthropic.claude-opus-5 export CYNATIVE_LLM_BEDROCK_REGION=us-east-1

Azure OpenAI - endpoint via env, no YAML needed

export CYNATIVE_LLM_PROVIDER=azure export CYNATIVE_LLM_MODEL=my-gpt-5.6-sol export AZURE_OPENAI_API_KEY=... export CYNATIVE_LLM_AZURE_ENDPOINT=https://my-resource.openai.azure.com

Local Ollama

export CYNATIVE_LLM_PROVIDER=ollama export CYNATIVE_LLM_MODEL=nemotron-cascade-2 export CYNATIVE_LLM_OLLAMA_URL=http://localhost:11434

</details>

<details>
<summary><strong>고급 YAML</strong></summary>

다중 키 로드 밸런싱, 사용자 지정 재시도 동작, 프록시 구성,
또는 기타 Bifrost 기능이 필요하면 YAML 파일을 작성하세요:```yaml
llm:
  provider: openai
  model: gpt-5.5
  api_key: env.OPENAI_API_KEY
  network_config:                 # common fields shown; see schemas.NetworkConfig for the full set
    base_url: https://my-proxy.example.com/v1
    default_request_timeout_in_seconds: 60
    max_retries: 3
    extra_headers:
      x-tenant: prod

docs/providers/에서 지원되는 모든 공급자의 구성 참조를 확인하세요.

세션 및 승인

cynative는 대화형 세션을 엽니다(화살표 키로 전체 줄 편집 및 기록 지원). cynative "task"는 작업을 실행한 후 대화형 상태를 유지합니다. -p / --print는 단일 작업을 비대화형으로 실행하고 종료합니다 - 스크립트 및 파이프용입니다(예: cat main.tf | cynative -p "이 Terraform을 잘못된 구성이 있는지 검토해줘"). 종료 코드는 스크립트에 대한 판정을 전달합니다: 보고서가 생성되면 0, 실행이 완료되었지만 답변이 없으면 2(공지에 이유가 명시됨 - 반복 또는 토큰 예산, 빈 모델 응답 또는 필터링된 모델 응답), 인터럽트 시 130, SIGTERM 시 143, 기타 모든 실패 시 1입니다.

Cynative는 셸에 이미 있는 자격 증명을 사용하여 스택을 호출합니다 - 별도의 자격 증명 저장소를 유지하지 않습니다. 항상 최소 권한의 읽기 전용 자격 증명을 제공하세요.

승인: 각 도구 호출은 단일 키 입력을 기다립니다: y는 한 번 실행하고, a는 세션 동안 해당 도구에 대한 이후의 모든 호출을 허용합니다(스크립트는 실행 전에 여전히 출력됩니다), 다른 키는 거부합니다. 제어 터미널이 없는 경우 --auto-approve를 사용하세요.

작업 중단: 작업이 실행되는 동안 Esc 또는 Ctrl-C를 한 번 눌러 정상적으로 중지합니다(에이전트는 이미 실행 중인 호출을 완료한 후 중지하고 ⏸ Stopped를 출력합니다). 에이전트가 반복적인 도구 오류 또는 거부를 만나면 자동으로 중지하고, 차단된 사항을 요약한 후 누락된 정보를 요청합니다.

Bash 완성: 각 셸에 대한 전체 설치 노트는 cynative completion <shell> --help를 참조하세요.

Cynative는 짧은 운영 푸터(시간, 토큰 사용량)를 stderr로 출력합니다 - stdout 리디렉션(cynative -p "..." > out.txt)은 캡처된 답변을 깨끗하게 유지합니다. --version은 버전, 커밋, 빌드 날짜, Go 버전 및 플랫폼을 출력합니다.

cynative doctor는 연구 세션을 시작하지 않고 구성 및 커넥터 준비 상태를 검증합니다. --live-llm을 전달하면 도구 없는 왕복으로 구성된 모델도 프로브합니다.

무인 실행을 위한 리소스 및 비용 제어

리소스 및 비용 제어: 무인, 예약 또는 장기 실행의 경우 - cron, CI 또는 모든 트리거에 연결된 경우 - 작업을 명시적으로 제한하세요. 주요 설정 항목(구성 키 / 환경 변수):

구성 키 / 환경 변수기본값효과
max_total_tokens
CYNATIVE_MAX_TOTAL_TOKENS
0 (무제한)세션당 토큰 상한. 메인 루프, 작업 하위 에이전트, 상시 검증기 및 대화형 후속 질문에 걸쳐 공유됩니다.
max_iterations
CYNATIVE_MAX_ITERATIONS
32턴당 최대 메인 루프 도구 호출 반복 횟수.
max_subagent_iterations
CYNATIVE_MAX_SUBAGENT_ITERATIONS
10작업 하위 에이전트 내 최대 반복 횟수.
max_consecutive_failures
CYNATIVE_MAX_CONSECUTIVE_FAILURES
5중단 및 요약 전 연속적인 무진행 도구 호출 횟수(0은 비활성화).
sandbox_max_concurrency
CYNATIVE_SANDBOX_MAX_CONCURRENCY
16샌드박스 내 최대 동시 도구 호출 수.

결과 검증(verify_findings 도구)은 추가 모델 호출을 발생시킵니다 - 결과를 생성하는 모든 실행에 대해 이를 예산에 포함하세요.

커넥터

셸의 자격 증명 외에도 Cynative는 세 가지 계층에서 읽기 전용을 강제합니다:

  • 네트워크 - 모든 요청 호스트는 매핑된 서비스 및 리전에 고정되며 연결 전에 확인된 IP가 검증됩니다 - 에이전트는 인프라에만 도달할 수 있고 다른 곳에는 도달할 수 없습니다.
  • 작업 게이트 - 모든 작업은 공급자 자체 API 정의에서 파생된 필수 IAM 작업으로 확인된 후 자격 증명이 연결되기 전에 읽기 전용 정책으로 승인됩니다: SecurityAudit (AWS), roles/viewer (GCP), Reader (Azure). 적용 범위는 클라우드 API가 성장함에 따라 추적되며 게이트는 쓰기로 분류되는 모든 항목에 대해 실패 시 폐쇄됩니다. Kubernetes의 경우 정책은 클러스터 자체의 라이브 view RBAC 역할로, 런타임에 가져와 요청별로 적용됩니다. GitHub 및 GitLab은 기본적으로 읽기 전용입니다. connectors.{github,gitlab}.permissions 설정은 워크플로우가 필요로 하는 특정 범주에 대한 쓰기를 허용할 수 있으며, 토큰이 연결되기 전에 요청별로 적용됩니다. 읽기 전용 모드에서도 GitHub의 비밀 스캐닝 엔드포인트는 차단된 상태로 유지되고 GitLab의 GraphQL API는 거부됩니다.
  • 자격 증명 (AWS) - 수임 역할(assumed-role) ID의 경우 자격 증명은 관리형 정책(기본적으로 SecurityAudit)으로 범위가 지정된 STS AssumeRole을 통해 재발급되므로 AWS IAM도 경계를 강제합니다. IAM 사용자 및 루트 ID는 기본 자격 증명으로 실행되며 위의 작업 게이트에 의해 제어됩니다.

Cynative는 AWS, GCP, Azure, EKS/GKE/AKS, 자체 관리형 Kubernetes, GitHub 및 GitLab에 연결합니다. 자격 증명 검색, 강화, 제한 사항 및 커넥터별 예제는 docs/connectors/README.md를 참조하세요.

코드 실행 및 도구 오케스트레이션

대량 작업의 경우 - "모든 공용 S3 버킷 확인", "모든 리전의 EKS 클러스터 나열" - Cynative는 한 번에 하나의 도구 호출을 발행하는 대신 샌드박스에서 JavaScript를 작성하고 실행할 수 있습니다. 에이전트의 도구(예: http_request)는 비동기 JavaScript 함수로 노출되므로 코드에서 루프, 필터링 및 호출 체이닝을 수행하고 내장된 mapConcurrent(items, fn, limit) 헬퍼(또는 작은 고정 집합의 경우 await Promise.all([...]))로 독립적인 호출을 동시에 실행합니다. 스크립트가 console.log로 출력한 내용만 모델에 반환되어 연구를 빠르고 토큰 효율적으로 유지합니다.```js // Discover regions, then list EKS clusters in every region concurrently, // following pagination - only the summary returns to the model. const r = await http_request({ method: "GET", url: "https://ec2.us-east-1.amazonaws.com/?Action=DescribeRegions&Version=2016-11-15", auth_provider: "aws", aws_auth: { service: "ec2", region: "us-east-1" }, }); const regions = [...r.body.matchAll(/([^<]+)</regionName>/g)].map((m) => m[1]);

const all = await mapConcurrent(regions, async (region) => { const clusters = []; let token = null; do { const url = https://eks.${region}.amazonaws.com/clusters + (token ? ?nextToken=${encodeURIComponent(token)} : ""); const resp = await http_request({ method: "GET", url, auth_provider: "aws", aws_auth: { service: "eks", region }, }); const body = JSON.parse(resp.body); clusters.push(...body.clusters); token = body.nextToken; } while (token); return { region, clusters }; });

console.log(JSON.stringify(all.filter((x) => x.clusters.length > 0), null, 2));

- **비동기 및 동시 실행**: 도구 함수는 Promise를 반환합니다 - `await`로 기다리거나, `mapConcurrent(items, fn, limit)`로 여러 리소스에 걸쳐 분산 실행(제한적, 순서 보장)하거나, 작은 고정 집합에는 `await Promise.all([...])`을 사용하세요.
- **구조화된 응답**: `http_request`는 `{ status, statusText, headers, body }`로 해석됩니다. `body`는 원시 문자열이며, JSON API에는 `JSON.parse(resp.body)`를, XML에는 직접 읽기를 사용하세요.
- **샌드박스**: 스크립트는 Cynative가 노출하는 도구만 호출할 수 있습니다 - 자체적인 네트워크나 호스트 접근 권한은 없습니다.
- **전체 스크립트 확인**: 각 `code_execution` 호출은 실행 전에 승인을 위해 전체가 표시됩니다(`--auto-approve`로 건너뛰기, `-v`로 각 내부 호출 스트리밍).
- **세션 내 상태 유지**: 대화형 세션 중 호출이 완료될 때까지 실행되는 한 `globalThis`에 저장된 값은 호출 간에 유지됩니다(시간 초과되거나 일시 중단된 호출은 재설정됨). 최상위 `let`/`const`/`var`/`function`은 단일 호출로 범위가 제한됩니다.
- **제한적**: 스크립트는 시간 초과(기본 120초)와 출력 크기 상한 아래에서 실행됩니다.

## 감사 로그

모든 도구 호출은 영구 JSONL 감사 로그(`~/.cynative/audit.log`, 기본 활성화)에 기록됩니다. 로그는 실패 시 폐쇄 방식입니다: 호출을 기록할 수 없으면 실행이 중단됩니다. 에이전트 실행의 모든 항목은 에이전트 이름, 소스 및 파일 다이제스트도 기록하므로, 발견 사항을 생성한 정확한 프롬프트까지 추적할 수 있습니다.

도구 결과는 기록 전에 편집되지만 승인 프롬프트 인수는 그대로 저장됩니다 - 로그에는 민감한 값이 포함될 수 있습니다. Cynative를 실행한 사용자만 읽을 수 있습니다. 순환 및 보존 기간은 구성 가능합니다.

`~/.cynative/config.yaml`의 `audit:` 아래에서 구성하거나 환경 변수를 통해 구성하세요:

| 키 | 환경 변수 | 기본값 |
|---|---|---|
| `audit.enabled` | `CYNATIVE_AUDIT_ENABLED` | `true` |
| `audit.path` | `CYNATIVE_AUDIT_PATH` | `~/.cynative/audit.log` |
| `audit.max_size_mb` | `CYNATIVE_AUDIT_MAX_SIZE_MB` | `100` |
| `audit.retention_days` | `CYNATIVE_AUDIT_RETENTION_DAYS` | `30` |
| `audit.compress` | `CYNATIVE_AUDIT_COMPRESS` | `false` |

## 질문 및 피드백

[Discussions](https://github.com/cynative/cynative/discussions)는 피드백을 공유하기 가장 좋은 곳입니다 - 무엇을 대상으로 했는지, 어떤 결과가 나왔는지, 무엇이 빠졌는지. 별표(Star)는 프로젝트를 사람들이 찾는 데 도움이 됩니다.

## 기여

기여를 환영합니다 - 새로운 에이전트, 커넥터, 평가 데이터셋, 그리고 전반적인 개선 사항. 개발 설정, `make check` 게이트, PR 규칙은 [CONTRIBUTING.md](https://github.com/cynative/cynative/blob/main/CONTRIBUTING.md)를, 취약점 신고는 [SECURITY.md](https://github.com/cynative/cynative/blob/main/SECURITY.md)를 참조하세요.

## 라이선스

Apache-2.0 라이선스. 전체 텍스트는 [LICENSE](https://github.com/cynative/cynative/blob/main/LICENSE)를 참조하세요.

카테고리