Embabel-Agent Licensing: Apache 2.0 Terms, Compliance Guide, and File Locations
The embabel-agent repository is licensed under the Apache License, Version 2.0, with the full license text stored in the LICENSE file and metadata declared in pom.xml for Maven consumers.
Understanding the embabel-agent licensing details ensures you can legally use, modify, and distribute this open-source agent framework in your projects. The Apache 2.0 license provides broad permissions while requiring specific attribution steps that both developers and legal teams need to track.
Apache 2.0 License: Core Permissions
The Apache License 2.0 grants four fundamental rights to users of embabel-agent:
- Use, reproduce, and distribute — Deploy the software for any purpose without restriction
- Modify — Create derivative works, provided you document your changes
- Patent protection — Receive a perpetual, worldwide, royalty-free patent license covering contributions
- Sublicense — Redistribute under the same Apache 2.0 terms or compatible licenses
These permissions make Apache 2.0 one of the most permissive and commercially friendly open-source licenses available.
Compliance Conditions for Embabel-Agent
To remain compliant when using embabel-agent in your projects, you must satisfy three conditions:
- Include the license — Every redistributed copy (source or binary) must retain the Apache 2.0 license text
- Document modifications — If you alter any files in
src/, add a prominent notice stating what you changed - Preserve attribution — Include any existing
NOTICEfile if present in the distribution
The license explicitly disclaims warranties and limits contributor liability, standard provisions that protect both the Embabel organization and downstream users.
Where Licensing Information Lives in the Repository
Embabel-agent exposes its licensing through multiple discovery paths for different consumers:
| File | Location | Purpose |
|---|---|---|
LICENSE |
Repository root | Complete Apache 2.0 legal text |
pom.xml |
Repository root | Maven metadata for automated license detection |
README.md |
Repository root | High-level license mention in project overview |
The pom.xml declaration ensures that build tools like Maven and Gradle can automatically extract licensing information when embabel-agent appears as a dependency.
Practical Implementation: Header Comments and Build Configuration
Adding Apache 2.0 Headers to Source Files
Include this standard header in Kotlin or Java files you modify or create based on embabel-agent:
/*
* Copyright © 2024 Embabel
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*/
package com.embabel.agent.example
Declaring the License in Your Own pom.xml
If you build a project that depends on embabel-agent, mirror the license declaration:
<project>
...
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0</url>
<distribution>repo</distribution>
</license>
</licenses>
...
</project>
Bundling the License in Distribution Artifacts
To ensure the LICENSE file appears in your final JAR:
mvn clean package -DattachLicense=true
For guaranteed inclusion, configure your build plugin to copy LICENSE into META-INF/ within the generated artifact.
Summary
- Embabel-agent uses Apache License 2.0, stored in the repository root
LICENSEfile - Maven consumers automatically detect licensing through
pom.xmlmetadata - Four broad permissions (use, modify, patent grant, sublicense) with three conditions (retain license, document changes, preserve notices)
- Source file headers and build configuration demonstrate compliance in practice
Frequently Asked Questions
Can I use embabel-agent in a commercial closed-source product?
Yes. The Apache 2.0 license explicitly permits commercial use without requiring you to open-source your own code. You must retain the original license and notices, but your proprietary code remains separate.
Does the embabel-agent license protect against patent claims?
Yes. The Apache 2.0 license includes an express patent grant where contributors license any relevant patents they hold. This provision reduces litigation risk for users of embabel-agent.
Where must I display the Apache 2.0 license when redistributing embabel-agent?
Include the LICENSE file in your distribution's documentation or legal notices section. For binary distributions, place it in a file named LICENSE or LICENSE.txt at the top level of your package. The NOTICE file, if present, must accompany it.
What happens if I modify embabel-agent source files?
You must add a prominent notice in each modified file stating that you changed it. The standard practice places this notice in the file header comment alongside the original copyright statement.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →