# DevOps Agent by Deplyra > Connect a repository and get a Dockerfile, a CI pipeline and a deploy config > generated from what is actually in it. When CI fails, the agent reads the log > and proposes the fix as a pull request. It never pushes to main. ## What it does - Reads a repository and reports what it found, WITH the file that supports each finding — "python, because requirements.txt is at the root". - Generates a Dockerfile, a CI workflow, and a deploy config. The default is server-first: one container and a compose file. Kubernetes manifests are produced only when asked for, and the screen says which you are getting. - Takes a failing CI log, explains the failure citing specific log lines, and where it can, proposes a patch as a pull request. ## What it does not do - **It never pushes to main.** Every change is a proposal a human merges. This is enforced in code by an allowlist that permits pushes to `devopsagent/…` branches and refuses everything else, and it is tested against a real git remote — including a control proving the same push succeeds without the guard. - It does not invent facts about your repository. Where the version, the entrypoint or the port is not written down somewhere in the repo, it is reported as unknown and the generated file says the value was a guess. No Python version is inferred from fashion. - It does not show you a patch it has not verified. Every proposed diff is run through `git apply --check` against your actual working copy at the actual commit before it is stored. A patch that does not apply is never written to the database, so no screen can render one. - It does not claim a build is fixed. It proposes; your CI decides. - It is not a hosting provider, a monitoring service, or a replacement for reading the diff. ## Honest limits - Detection covers Python, Node, Go, Rust, Ruby, PHP and Java to varying depths. Java produces no Dockerfile because this product does not parse build files deeply enough to know your artifact name, and a generic one would look authoritative and be wrong. - Opening a pull request requires a forge token to be configured. Without one the patch is still generated and verified and is available to download; the UI says so rather than showing a button that cannot work. - The diagnosis is a reading of a log, not an understanding of your codebase. ## Links - [How it works](https://devopsagent.deplyra.com/how-it-works) - [Compared with the alternatives](https://devopsagent.deplyra.com/compare) - [FAQ](https://devopsagent.deplyra.com/faq) ## About DevOps Agent is built by Deplyra Ltd. Billing is switched off; nothing on the site takes payment and no page claims otherwise.