{"id":37119620,"url":"https://github.com/decombine/slc","last_synced_at":"2026-01-14T13:56:58.257Z","repository":{"id":276272102,"uuid":"928368982","full_name":"decombine/slc","owner":"decombine","description":"Contracts for cloud-native business","archived":false,"fork":false,"pushed_at":"2025-05-06T15:41:38.000Z","size":162,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-06T16:43:56.026Z","etag":null,"topics":["cloudevents","fluxcd","go","nats","openpolicyagent","smartlegalcontracts"],"latest_commit_sha":null,"homepage":"https://decombine.com","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/decombine.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-02-06T14:22:32.000Z","updated_at":"2025-05-06T15:39:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"8408a724-6783-437e-b6d7-acdae8a4a29a","html_url":"https://github.com/decombine/slc","commit_stats":null,"previous_names":["decombine/slc"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/decombine/slc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decombine%2Fslc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decombine%2Fslc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decombine%2Fslc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decombine%2Fslc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/decombine","download_url":"https://codeload.github.com/decombine/slc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decombine%2Fslc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28422380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T13:30:50.153Z","status":"ssl_error","status_checked_at":"2026-01-14T13:29:08.907Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudevents","fluxcd","go","nats","openpolicyagent","smartlegalcontracts"],"created_at":"2026-01-14T13:56:57.422Z","updated_at":"2026-01-14T13:56:58.240Z","avatar_url":"https://github.com/decombine.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Decombine SLC\n[![License Apache 2][License-Image]][License-Url] [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](CODE_OF_CONDUCT.md)\n\n[License-Url]: https://www.apache.org/licenses/LICENSE-2.0\n[License-Image]: https://img.shields.io/badge/License-Apache2-blue.svg\n\n## Contracts for cloud-native business\n\nCreate Decombine Smart Legal Contracts (SLC) with Go. Decombine SLC orchestrates and automates agreement and contractual \nbusiness logic as cloud-native workflows.\n\nSLC incorporates open source [Cloud Native Computing Foundation](https://www.cncf.io/) (CNCF) tooling such as:\n\n- [Kubernetes](https://kubernetes.io/) for workload execution\n- [NATS](https://nats.io/) for distributed event handling\n- [CloudEvents](https://cloudevents.io/) for event schema\n- [Flux](https://fluxcd.io/) for GitOps lifecycles and resourcing\n- [Open Policy Agent](https://www.openpolicyagent.org/) for state and policy enforcement\n\nUsing SLC, you can create transparent, repeatable, and predictable business workflows that are ready for the most complex or \ndemanding enterprise requirements.\n\nLearn more about Decombine at [decombine.com](https://decombine.com).\n\n### Installation\n\nThe `slc` Go library can be installed with:\n\n```bash\ngo get \"github.com/decombine/slc@latest\"\n```\n\nThe `contract` CLI can be installed with:\n\n```bash\ngo install \"github.com/decombine/contract@latest\"\n```\n\n## Use Cases\n\n### Zero-trust infrastructure and services\n\nSLC can be declaratively defined using templates or directly in Go. The SLC definition is a blueprint of the \nexact workloads that are triggered by the SLC and how. As long as the SLC definition is available, or the source code operating \nthe SLC, parties have programmatic proof of the system.\n\n### Complex, agentic multi-party business logic\n\nSLC provide structure and transparency around business logic in a vendor-agnostic way using a combination of industry-leading \nopen source tools. Furthermore, they can be networked with other SLC to form complex, zero-trust workflows which treat \nservices and agents as first-class consumers.\n\n## Overview\n\n`slc` is an SDK to create Decombine Smart Legal Contracts (SLC). Decombine SLC performs programmatic contractual\nexecution in a standardized, templated, and declarative way. SLC are defined as a definition file that maps different\nstates and events with software actions to be executed. SLC are designed to be used in a [GitOps](https://www.gitops.tech/) workflow.\n\nDecombine SLC were invented to offer an accessible, transparent, and cloud-native way for parties to form an agreement.\nSLC ensure transparency about *what* will happen and *when*. In contrast to conventional agreements where a digitized\ncontract may be created and then all other processes are separate, an SLC instead integrates contract-related processes\ninto an end-to-end workflow.\n\nDecombine SLC are intended to provide:\n\n- Safer, predictable, and lower cost execution of agreements\n- Increased transparency and understanding throughout the lifecycle of contract execution\n- Greater accessibility to complex solutions by integrating with industry-leading open source\n\nDecombine SLC can be run on conventional infrastructure and are currently under development for Kubernetes-native\nworkloads. Decombine SLC are not a replacement for natural language contracts, but instead, augment conventional contracts.\n\nDecombine SLC can be self-hosted or run on a managed service such as [decombine.com](https://decombine.com).\n\nDecombine SLC are defined as a JSON, YAML, or TOML definition that includes a State Configuration to create a [Unified Modeling\nLanguage state machine](https://en.wikipedia.org/wiki/UML_state_machine). Each state in the state machine can be associated\nwith a set of actions to be executed on entry and exit of the state. Actions will eventually be any arbitrary code, but currently\ndevelopment is focused on Kubernetes-native runtime.\n\nTransitions between states are triggered by events. Events use the [CloudEvents](https://cloudevents.io/) specification.\n\n## How to use\n\nThe `slc` package can be used to generate and validate the SLC definition and State Configuration. You can also use the\n[contract CLI](https://github.com/decombine/contract) to generate and validate SLC in various formats (JSON, YAML, TOML).\n\nSLC are designed and implemented declaratively to use [GitOps](https://www.gitops.tech/). The SLC definition, contractual text references, associated \npolicies, and actions are stored in a Git repository. The Git repository is then synchronized with a runtime environment such as\nKubernetes. A remote service such as [Decombine](https://decombine.com) can be used to provide state synchronization, orchestration,\nand event handling or `slc-controller` can be self-hosted.\n\nThe [slc-controller](https://github.com/decombine/slc-controller) can be installed on Kubernetes to schedule [SmartLegalContract]()\nresources and schedule the workloads defined in the SLC definition.\n\n## Contributing\n\nPlease read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests.\n\n## Versioning\n\nDecombine SLC are currently under active development. `slc`, `contract`, and `slc-controller` are all in alpha and adhere to\n[Semantic Versioning](https://semver.org/). The Decombine specification itself is versioned and will be updated as needed.\n\n## Resources\n\n- [Decombine.com](https://decombine.com)\n- [Decombine SLC Specification]()\n- [Decombine SLC Whitepaper]()\n\n## License\n\nThis project is licensed under the Apache License, Version 2.0 - see the [LICENSE](LICENSE) file for details.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdecombine%2Fslc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdecombine%2Fslc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdecombine%2Fslc/lists"}